Accéder au contenu principal

Ideal Contact – Documentation

Ideal Contact crée des formulaires de contact pour Joomla et YOOtheme Pro, protégés contre le spam. Il reprend le fonctionnement et le vocabulaire de Fox Contact et importe vos formulaires Fox Contact. Ce guide couvre l’installation, la création d’un formulaire, les réglages et le passage depuis Fox Contact.

Prérequis

  • Joomla 3.10 (PHP 7.4 ou plus), 4.4, 5 ou 6 (PHP 8.1 ou plus)
  • N’importe quel template : le formulaire prend le style UIkit (YOOtheme Pro) ou Bootstrap du site
  • YOOtheme Pro 4 ou 5 pour l’élément du constructeur (facultatif)
  • AcyMailing pour l’inscription aux newsletters (facultatif)

Installation

  1. Téléchargez le ZIP depuis Mes licences ou depuis le lien de l’e-mail de commande. Ne le décompressez pas.
  2. Dans Joomla, ouvrez Système › Installer › Extensions et déposez le ZIP dans Envoyer un paquet.
  3. Le paquet installe le composant Ideal Contact (tableau de bord et messages reçus), le module Ideal Contact (le formulaire) et le plugin Système - Ideal Contact (YOOtheme Pro), activé d’office. Sans YOOtheme Pro, ce plugin ne fait rien.

Une nouvelle version s’installe de la même façon, par-dessus l’ancienne. Vos formulaires et vos messages sont conservés ; Joomla affiche ensuite les nouveautés de la version.

Désinstaller

Dans Système › Gérer › Extensions, cochez seulement la ligne du paquet « Ideal Contact » puis Désinstaller. Les demandes reçues restent dans la base : une réinstallation les retrouve. Joomla supprime les modules Ideal Contact. Si vous venez de Fox Contact et qu’il est encore installé, les formulaires basculés reviennent automatiquement à Fox Contact ; après une réinstallation, ils peuvent être importés de nouveau.

Clé de licence et mises à jour

Votre clé de licence (format IDPC-XXXX-XXXX-XXXX-XXXX) figure dans l’e-mail de commande et sur la page Mes licences. Collez-la une seule fois par site :

  1. Ouvrez Système › Mettre à jour › Sites de mise à jour.
  2. Cliquez sur Ideal Contact : Joomla signale « clé de téléchargement manquante ».
  3. Collez la clé dans le champ Clé de téléchargement, puis Enregistrer et fermer.

Les nouvelles versions apparaissent ensuite dans Système › Mettre à jour › Extensions et s’installent en un clic. Les mises à jour et le support par e-mail sont inclus pendant 12 mois. Ensuite, l’extension continue de fonctionner sans limite de durée ; seul l’accès aux nouvelles versions s’arrête. Vous pouvez renouveler à tout moment depuis Mes licences.

La clé ne se met pas dans les réglages du plugin ni dans YOOtheme. La même clé sert pour toutes vos extensions IdealPC.

Le paquet installe le composant (Composants › Ideal Contact), le module Joomla et l’élément YOOtheme Pro.

Sous Joomla 3.10, le même champ se trouve dans Extensions › Gérer › Sites de mise à jour.

Créer un formulaire

Comme dans Fox Contact, un formulaire = un module ou une page (élément de menu). Tous les réglages se font dans le module ou dans l’élément de menu.

  • Formulaire dans une position du template (barre latérale, bas de page…) : Composants › Ideal Contact › Créer un module de contact, choisissez la position et les pages, puis réglez les onglets ci-dessous.
  • Page de contact : Composants › Ideal Contact › Créer une page de contact (type d’élément de menu « Ideal Contact › Formulaire »).
  • Dans une page YOOtheme Pro : créez d’abord le formulaire dans un module Ideal Contact publié (il n’a pas besoin de position), puis dans le page builder ajoutez l’élément Ideal Contact (groupe IdealPC) et choisissez le formulaire dans la liste. Les réglages restent ceux du module ; les demandes arrivent comme d’habitude.

Chaque formulaire a les mêmes onglets :

Onglet Rôle
Champs de formulaire Le designer visuel : lignes, colonnes et champs du formulaire.
Actions Ce qui se passe après l’envoi : e-mail aux administrateurs, copie à l’utilisateur, message ou redirection, enregistrement en base.
Sécurité Anti-spam, protection anti-robot et captcha.

Site multilingue

Créez un module Ideal Contact par langue (réglage Langue du module) à la même position, par exemple contact. Dans le page builder, l’élément Ideal Contact affiche alors automatiquement le formulaire de la langue de la page. Sur un site multilingue, l’élément propose aussi un choix par langue (« Formulaire – English »…) pour imposer un formulaire précis. Pour une page de contact, c’est l’élément de menu associé (associations de Joomla) qui est utilisé.

Onglet « Champs de formulaire » (le designer)

  • La barre orange « Formulaire principal » règle la mise en page générale (étiquettes à côté ou dans les champs, largeurs, style UIkit / Bootstrap).
  • Les barres vertes sont les lignes, les barres bleues les colonnes. « Ajouter une colonne » à droite, « Ajouter une ligne » en bas.
  • Ajouter un champ ouvre la palette « Types de champ ». Les types grisés sont déjà présents dans le formulaire (certains ne peuvent être ajoutés qu’une fois : Nom, E-mail, Captcha, reCAPTCHA, Pièces jointes, Identifiant unique, Newsletters, Soumettre…).
  • Cliquer sur un champ ouvre ses propriétés (Apparence, Comportement, Style). On déplace un champ par glisser-déposer.
  • N’oubliez pas Enregistrer en haut de la page : les changements du designer sont enregistrés avec le module.
Designer visuel : lignes, colonnes et champs, comme Fox Contact
Designer visuel : lignes, colonnes et champs, comme Fox Contact
Propriétés d’un champ
Propriétés d’un champ

Prévisualiser et tester le formulaire

Deux boutons, qui tiennent compte des réglages pas encore enregistrés :

  • Prévisualisation (barre d’outils en haut, à côté d’Enregistrer, comme dans RSForm! Pro) : ouvre le formulaire sur votre site, dans un nouvel onglet, avec tout le template (en-tête, menu, pied de page). Le formulaire fonctionne vraiment : captcha, reCAPTCHA, e-mails, message ou redirection après l’envoi. Les messages d’essai ne sont pas ajoutés aux Éléments envoyés.
  • Aperçu responsive (en haut à droite du designer) : le formulaire dans une fenêtre, en largeur Ordinateur, Tablette ou Mobile, pour vérifier la mise en page. Les champs sont contrôlés comme sur le site, mais rien n’est envoyé ; reCAPTCHA / Turnstile / hCaptcha y sont remplacés par un emplacement.

Les deux restent valables 30 minutes. Après un changement, cliquez de nouveau sur le bouton. Un aperçu ne remplace pas l’enregistrement : cliquez ensuite sur Enregistrer.

Champs particuliers

Téléphone. Une « Ligne de texte simple » dont l’étiquette parle de téléphone (Téléphone, Natel, Mobile, Phone…) devient automatiquement un champ téléphone ; on peut aussi le choisir dans ses propriétés, réglage Contenu (Automatique / Texte libre / Numéro de téléphone). Les lettres sont refusées et le numéro est mis en forme : 0794448834, 079/444.88.34 ou (079) 444 88 34 → 079 444 88 34 ; +41794448834, 0041 79… ou +41 (0)79… → +41 79 444 88 34. Les numéros étrangers sont acceptés tels quels (6 à 15 chiffres).

Pièces jointes. Le visiteur clique sur Ajouter des fichiers (bouton au style du template) ou glisse ses fichiers dans la zone ; il peut en ajouter en plusieurs fois et en retirer (×) avant l’envoi. Réglages : nombre minimum et maximum de fichiers, taille maximum par fichier (limitée par le serveur, indiquée dans la fenêtre), types acceptés (images, documents, archives, audio, vidéo), taille maximum jointe à l’e-mail (au-delà, les fichiers restent téléchargeables dans Éléments envoyés), suppression des fichiers après l’envoi. Les fichiers dangereux (programmes, scripts, pages web, faux fichiers image) sont toujours refusés. Ils sont gardés dans un dossier protégé, sous un nom secret, et effacés avec la demande.

Identifiant unique. Donne un numéro à chaque demande (ex. 125-DEVIS) : chiffres, lettres ou les deux, et une série facultative. Il n’apparaît pas dans le formulaire ; utilisez la variable affichée dans ses propriétés (ex. {uniqueidentifier}) dans l’objet ou le texte des e-mails, et dans le message affiché après l’envoi (« Votre numéro de demande : {uniqueidentifier} »).

Intégration Newsletters (AcyMailing). Inscrit le visiteur aux listes d’AcyMailing (comme Fox Contact), avec l’adresse du champ E-mail. Réglages : listes (seules les listes actives sont proposées), affichage (une case pour toutes les listes, une case par liste, ou aucune case = inscription automatique, déconseillée), position du texte, case pré-cochée, confirmation par e-mail (double opt-in, activée par défaut). Un abonné déjà connu n’est pas recréé. Si AcyMailing n’est pas installé ou est désactivé, le champ n’est simplement pas affiché. Pour respecter le RGPD et la nLPD : case non cochée par défaut et confirmation par e-mail activée.

Onglet « Actions »

  • Administrateurs : adresse(s) de réception (vide = adresse du site), copie, copie cachée, objet et texte de l’e-mail. Variables : {sitename}, {field-table-full}, {field-table}, {date}, {time}, {current-url}, {page-title}, {client-ip-address}…
  • Utilisateur : copie envoyée à l’expéditeur.
  • Sur l’écran : message affiché après l’envoi, ou redirection vers une page.
  • Base de données : enregistrer les messages (Composants › Ideal Contact › Éléments envoyés).
Onglet Actions : e-mail aux administrateurs, textes par défaut
Onglet Actions : e-mail aux administrateurs, textes par défaut

Textes par défaut. Les objets, les e-mails et le message à l’écran sont pré-remplis dans la langue du formulaire (langue du module ou de l’élément de menu ; pour « Toutes », la langue de votre administration). Le bouton Texte par défaut sous chaque champ remet le texte proposé si vous l’avez modifié. Sur un site multilingue, créez un module par langue si les e-mails doivent être traduits.

Les messages et les e-mails partent dans la langue de la page où le visiteur a rempli le formulaire.

Astuce : dans un champ « Menu déroulant », chaque choix peut avoir une adresse e-mail additionnelle (ex. « Devis » → devis@…).

Apparence des e-mails

Volet Apparence : Logo, affiché en haut des deux e-mails à la place du nom du site (PNG ou JPG : le SVG ne s’affiche ni dans Outlook ni dans Gmail), Largeur du logo en pixels, et Couleur d’accent (liseré en haut, bouton « Répondre », liens). La variable {logo} ajoute le logo ailleurs, par exemple dans le pied de page.

Variables

Sous chaque e-mail, la liste des variables : {sitename}, {logo}, {date}, {time}, {user}, {current-url}, {page-title}, {client-ip-address}, {field-table-full} (tous les champs et les informations techniques), {field-table} (tous les champs), puis les champs du formulaire (ex. {name}, {email}, {textarea1}). Cliquez sur une variable pour la copier, puis collez-la dans le texte.

Si l’e-mail de confirmation ne contient ni {field-table} ni {field-table-full}, un récapitulatif de la demande est ajouté automatiquement en bas.

Onglet « Sécurité » et captcha

Ideal Contact protège chaque formulaire en plusieurs couches. Les quatre premières sont actives par défaut et invisibles pour vos visiteurs ; le captcha est en plus, si vous le souhaitez.

Protection Visible ? Réglage
Mots interdits (anti-spam de Fox Contact) non Sécurité › Anti-spam
Vérification invisible (le navigateur résout un petit calcul) non Sécurité › Protection anti-robot
Piège à robots, délai minimum, envois par heure et par adresse IP, blocage après échecs répétés non Sécurité › Protection anti-robot
Copies au visiteur limitées : 20 par heure et par formulaire (réglable) et 3 par heure pour une même adresse e-mail, afin que le formulaire ne serve pas à envoyer des e-mails en masse non Sécurité › Protection anti-robot
Captcha (image) et/ou reCAPTCHA oui (sauf reCAPTCHA v3) champs du designer ; clés dans Sécurité › Captcha
Onglet Sécurité : anti-spam invisible et captcha
Onglet Sécurité : anti-spam invisible et captcha

5.1 Ajouter un captcha – deux champs, comme dans Fox Contact

Dans l’onglet « Champs de formulaire », la palette « Types de champ » propose deux captchas. Vous pouvez mettre l’un, l’autre, ou les deux :

Champ Ce qu’il affiche Réglage
Captcha une image dessinée par votre site : lettres et chiffres, ou calcul (ex. 7 + 3) dans ses propriétés (clic sur le champ) : type, nombre de caractères, taille, couleurs. Aucune clé.
reCAPTCHA le service choisi dans l’onglet Sécurité : Google reCAPTCHA v2 ou v3, Cloudflare Turnstile, hCaptcha onglet « Sécurité » › Captcha : service + clé du site + clé secrète

Pour Google reCAPTCHA : 1. Onglet Champs de formulaire › Ajouter un champ › reCAPTCHA. 2. Onglet Sécurité › Captcha : choisissez le service, collez les deux clés. 3. Enregistrer.

⚠ Les clés seules ne suffisent pas : sans champ reCAPTCHA dans le formulaire, Google n’est pas affiché. Et le champ Captcha (image) n’utilise jamais les clés.

ℹ Un champ reCAPTCHA sans clés affiche une image à la place : un formulaire avec un captcha n’est jamais sans protection.

Mettre les deux captchas ajoute un peu de protection mais gêne aussi vos visiteurs ; avec les protections invisibles d’Ideal Contact, un seul captcha suffit dans la plupart des cas (reCAPTCHA v2 ou Turnstile conseillés).

5.2 Quel service choisir ?

Service Ce que voit le visiteur Clés
Google reCAPTCHA v2 la case « Je ne suis pas un robot » (comme Fox Contact) type « v2 – case à cocher »
Google reCAPTCHA v3 rien dans le formulaire – seulement un petit badge Google en bas à droite de la page type « v3 »
Cloudflare Turnstile une petite case, souvent validée automatiquement gratuit, sans pistage publicitaire
hCaptcha une case, parfois des images à choisir gratuit
Image (lettres ou calcul) une image à recopier aucune clé, aucun service externe

Les clés Google sont propres à un type : des clés v3 ne fonctionnent pas en v2 (et inversement). Chez Google, choisissez le même type que dans Ideal Contact.

5.3 Obtenir des clés Google reCAPTCHA

  1. Ouvrez https://www.google.com/recaptcha/admin (lien aussi dans l’onglet Sécurité) et connectez-vous avec un compte Google.
  2. Créez un site : un nom, le type (v2 « Case à cocher Je ne suis pas un robot » ou v3), et le domaine du site (ex. exemple.ch, sans https://).
  3. Google affiche une clé du site et une clé secrète : collez-les dans Sécurité › Captcha.

Pour reCAPTCHA v3, le score minimum (0.5 conseillé) fixe la sévérité : Google note chaque visiteur de 0 (robot) à 1 (humain).

5.4 Je ne vois pas le captcha

  • Pour Google / Turnstile / hCaptcha : le champ reCAPTCHA est-il dans le formulaire (onglet Champs de formulaire) ? Le champ Captcha affiche toujours une image, jamais Google.
  • Les deux clés sont-elles remplies, sans espace, et le domaine est-il déclaré chez Google ?
  • Avez-vous choisi reCAPTCHA v3 ? Alors c’est normal : rien n’apparaît dans le formulaire, seulement le badge Google en bas à droite.
  • Le module a-t-il été enregistré ? Videz aussi le cache de Joomla si le cache des pages est activé.
  • Le script du service ne se charge que lorsque le formulaire devient visible à l’écran : faites défiler jusqu’au formulaire.

Les envois bloqués (captcha faux, robot, limite atteinte, service injoignable) sont notés dans administrator/logs/idealcontact.php si « Enregistrer les tentatives de spam » est activé.

Messages reçus

Composants › Ideal Contact : - Tableau de bord : la liste de vos formulaires (module ou page), le nombre de messages et de non lus. - Éléments envoyés : tous les messages, filtre par formulaire, lu / non lu, suppression, export CSV (Excel).

Tableau de bord : vos formulaires et les demandes reçues
Tableau de bord : vos formulaires et les demandes reçues

Venir de Fox Contact

  • Les noms des onglets, des types de champ et des réglages sont ceux de Fox Contact.
  • Les deux champs de Fox Contact existent toujours : Captcha (image) et reCAPTCHA, utilisables ensemble.
  • Le reCAPTCHA de Fox Contact passait par le plugin reCAPTCHA de Joomla 3, qui n’existe plus dans Joomla 5 et 6 : dans Ideal Contact, les clés se saisissent directement dans l’onglet Sécurité. À l’import, les clés de ce plugin sont reprises automatiquement.

7.1 Remplacer Fox Contact, puis migrer le site

Fox Contact ne fonctionne pas sur Joomla 4 et plus : il bloque le contrôle de pré-mise à jour. Ideal Contact s’installe aussi sur Joomla 3.10 (PHP 7.4 ou plus) : on remplace Fox Contact sur le site actuel, puis on migre quand on veut, sans rien refaire.

  1. Sauvegardez le site (fichiers et base de données).
  2. Installez Ideal Contact sur le site Joomla 3.
  3. Ouvrez Composants › Ideal Contact : le tableau de bord signale les formulaires Fox Contact trouvés. Cliquez Importer.
  4. Importer les formulaires cochés : chaque module Fox devient un module Ideal Contact non publié, à la même position et sur les mêmes pages, avec les mêmes champs, textes, e-mails et réglages. Les éléments de menu Fox sont préparés.
  5. Pour chaque formulaire : Prévisualisation pour l’essayer sur le site (rien n’est publié), Modifier si besoin, puis Basculer. Le module Ideal Contact est publié et le module Fox dépublié ; un élément de menu garde la même adresse (même Itemid), donc les liens et le référencement ne changent pas.
  6. Tant que Fox Contact est installé, Remettre Fox Contact annule la bascule.
  7. Importer les demandes : les messages reçus par Fox Contact rejoignent les Éléments envoyés, rattachés au bon formulaire. Le compteur des numéros de demande continue après celui de Fox. On peut relancer l’import : il n’ajoute que les nouvelles demandes.
  8. Quand tous les formulaires sont basculés, la page propose de désinstaller Fox Contact (composant, module, plugin et bibliothèque). Le contrôle de pré-mise à jour de Joomla affiche alors Ideal Contact comme compatible.
  9. Migrez le site vers Joomla 4.4 puis 5 ou 6 : Ideal Contact continue de fonctionner sans réinstallation. Passez PHP en 8.1 ou plus avant Joomla 5.
Étape 1 – Fox Contact est détecté
Étape 1 – Fox Contact est détecté
Étape 2 – Tout est analysé
Étape 2 – Tout est analysé
Étape 3 – Les formulaires sont repris
Étape 3 – Les formulaires sont repris
Étape 4 – Vous basculez, formulaire par formulaire
Étape 4 – Vous basculez, formulaire par formulaire
Étape 5 – Les anciennes demandes sont là
Étape 5 – Les anciennes demandes sont là

Les données de Fox Contact ne sont jamais modifiées ni supprimées par l’import. Ce qui n’est pas repris : le message privé Joomla envoyé à un utilisateur (réglage rare de Fox) ; les fichiers joints des anciennes demandes restent dans le dossier de Fox Contact. Si une langue du site n’est pas traduite dans Ideal Contact (fr, de, en, it, es, nl, pt), l’interface s’affiche en anglais ; les textes de vos formulaires restent dans leur langue.

Sur un site déjà migré en Joomla 4 ou 5 où les données de Fox Contact sont restées dans la base, le même import fonctionne.

Versions de Fox Contact. L’import est prévu pour Fox Contact 3.x et testé avec la 3.9.8, la dernière version pour Joomla 3.

Remplacer RSForm! Pro ou un autre formulaire

Il n’y a pas d’import automatique depuis RSForm! Pro, ChronoForms ou Convert Forms, mais le passage est rapide :

  1. Créez un module Ideal Contact avec les mêmes champs, les mêmes adresses de réception et les mêmes textes d’e-mails.
  2. reCAPTCHA : reprenez la clé du site et la clé secrète dans la configuration de l’ancienne extension, collez-les dans Sécurité › Captcha (même type : v2 ou v3), puis ajoutez le champ reCAPTCHA au formulaire.
  3. Placez le formulaire au même endroit : même position, même page, ou élément Ideal Contact dans YOOtheme Pro.
  4. Testez un envoi, puis désactivez l’ancienne extension sans la désinstaller tout de suite : vous pourrez revenir en arrière.

Le formulaire de contact d’idealpc.ch a été remplacé de cette façon : RSForm! Pro → Ideal Contact, en français et en anglais, avec reCAPTCHA v3.

Support

Une question, un bug, une idée ? Écrivez à Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser. en indiquant vos versions de Joomla, PHP et YOOtheme Pro (si vous l’utilisez) et, si possible, le lien de la page. Je réponds personnellement, en général sous un jour ouvrable.