dfaimetagen — Générateur IA de méta titles, descriptions & ALT
Installation, configuration des providers IA, génération en masse, patterns CTR, variantes A/B, CRON et dépannage du module dfaimetagen.
Présentation
dfaimetagen génère en masse vos meta titles, meta descriptions et balises ALT d’images via IA (Anthropic Claude, OpenAI GPT ou Mistral) sur PrestaShop 8 et 9. Le module couvre 6 types d’entités (produits, catégories, pages CMS, fabricants, fournisseurs, images produits), applique des patterns CTR éprouvés, produit des variantes A/B, contrôle les longueurs SERP et rejette les doublons via similarité Jaccard.
Prérequis
- PrestaShop 8.0 à 9.x
- PHP 8.1, 8.2, 8.3 ou 8.4
- Extensions PHP : curl, json, iconv
- MySQL 5.7+ ou MariaDB 10.3+
- Une clé API auprès d’au moins un provider : Anthropic, OpenAI ou Mistral
Installation
- Téléchargez le fichier
dfaimetagen.zipdepuis votre compte client. - Dans le back-office PrestaShop, allez dans Modules > Module Manager > Ajouter un nouveau module.
- Téléversez le ZIP et cliquez sur Installer.
- Le module crée 6 tables en base (préfixe
df_aimeta_), installe 11 patterns CTR par défaut et génère un token CRON aléatoire. - Un nouvel onglet AI Meta Generator apparaît sous le menu Catalogue.
Configuration du provider IA
- Allez dans Catalogue > AI Meta Generator > Paramètres.
- Sélectionnez votre provider actif : Anthropic (recommandé pour le français), OpenAI ou Mistral.
- Collez votre clé API dans le champ correspondant.
- Cliquez sur le bouton Test à côté du champ pour vérifier la connectivité — vous devez recevoir la réponse « OK ».
- Les modèles par défaut sont
claude-sonnet-4-5,gpt-4o-minietmistral-large-latest. Vous pouvez les modifier si vous préférez un autre modèle du même provider.
Les clés API sont stockées dans la table Configuration de PrestaShop et ne sont jamais exposées côté front-office. Le module n’inclut pas de crédits IA : chaque génération consomme votre propre quota chez le provider (environ 0,0005 à 0,003 € par génération).
Réglages de génération
Toujours dans Paramètres, vous pouvez ajuster :
- Limites de longueur — par défaut alignées sur les recommandations Google SERP : meta title 35–60 caractères, meta description 120–158, ALT 25–125. Si l’IA dépasse, le texte est tronqué proprement sur une frontière de mot.
- Variantes A/B par item — de 1 à 5 alternatives générées par entité et par langue.
- Seuil anti-duplication — pourcentage de similarité Jaccard au-delà duquel une variante est rejetée (85 % par défaut). La comparaison est insensible aux accents.
- Taille de lot — nombre d’items traités par tick AJAX ou CRON (10 par défaut, jusqu’à 100).
- Timeout HTTP — délai maximal d’attente d’une réponse du provider (60 s par défaut).
- Écrasement / Ignorer les non-vides — comportement par défaut face aux méta déjà renseignées.
Lancer une génération en masse
- Allez dans Catalogue > AI Meta Generator > Bulk Generation.
- Entité : produits, catégories, pages CMS, fabricants, fournisseurs ou images produits.
- Champ : meta title, meta description ou ALT d’image (les ALT s’appliquent aux images produits).
- Pattern CTR : choisissez un pattern précis ou laissez Auto pour utiliser le pattern par défaut du champ.
- Langues : sélection multiple — la génération est multipliée (items × langues).
- Scope : toutes les entités, par liste d’IDs, ou par filtre catégorie / fabricant.
- Limite : fixez 10 ou 20 pour un test, 0 pour tout traiter.
- Cliquez sur Créer le job.
Commencez toujours par un job limité à 10–20 items pour valider le ton et le format des textes générés, ajustez le pattern ou le template si besoin, puis relancez sans limite.
Suivre et exécuter les jobs
La page Jobs liste tous les jobs avec leur progression, leurs statistiques (réussis / échoués / ignorés) et leur statut. Trois modes d’exécution :
- Exécuter jusqu’à terminé (page détail du job) — traite les lots en boucle via AJAX avec barre de progression en direct. Gardez l’onglet ouvert.
- Exécuter un lot — traite un seul lot puis recharge la page.
- CRON — traitement en arrière-plan, recommandé pour les gros catalogues (voir ci-dessous).
Un job peut être annulé en cours, relancé depuis le début, ou supprimé. L’historique complet de chaque génération (statut, tokens entrée/sortie, erreur éventuelle) est conservé dans l’onglet Historique du détail du job.
Configurer le CRON
- Dans Paramètres, section CRON, copiez l’URL affichée. Elle a la forme :
https://votre-boutique.com/modules/dfaimetagen/cron.php?token=VOTRE_TOKEN - Ajoutez-la à votre crontab serveur, par exemple toutes les 5 minutes :
*/5 * * * * curl -s "https://votre-boutique.com/modules/dfaimetagen/cron.php?token=VOTRE_TOKEN" >/dev/null - Chaque passage traite jusqu’à 5 lots du job en attente le plus ancien. Paramètres optionnels :
&batch=20(taille de lot) et&loops=10(nombre de lots par passage).
Le token protège l’endpoint : ne le partagez pas. En cas de doute, régénérez-le depuis les Paramètres (bouton « Regénérer le token ») — pensez alors à mettre à jour votre crontab.
Variantes A/B et activation
Chaque génération produit le nombre de variantes configuré (1 à 5). La première variante valide est écrite sur l’entité et marquée Active. Les autres restent en réserve dans la page de détail du job :
- Cliquez sur Activer à côté d’une variante pour l’écrire immédiatement sur l’entité.
- Les autres variantes du même triplet (entité, champ, langue) sont automatiquement désactivées.
- Le compteur de caractères de chaque variante permet de vérifier la conformité SERP d’un coup d’œil.
Patterns CTR
Les 11 patterns préinstallés couvrent trois familles :
- Meta titles : bénéfice + année, liste numérotée, crochets USP, question hook, mots de pouvoir.
- Meta descriptions : empilement de bénéfices, social proof, problem-solution, CTA direct.
- ALT d’images : descriptif, contextuel.
Pour créer vos propres patterns, allez dans Catalogue > AI Meta Generator > Patterns. Le template accepte des tokens dynamiques :
{NAME},{BRAND},{CATEGORY},{PRICE},{YEAR},{NUMBER},{LANG_NAME}— remplis automatiquement par le module ;{BENEFIT},{USP},{CONTEXT}— remplis par l’IA au moment de la génération.
Les patterns marqués « système » sont livrés avec le module et préservés lors des mises à jour.
Templates de prompts avancés
Pour un contrôle total du comportement de l’IA, créez des templates dans Catalogue > AI Meta Generator > Prompt Templates. Chaque template cible un triplet (entité, champ, langue — ou toutes les langues) et définit :
- le system prompt — rôle, ton, contraintes globales ;
- le user prompt — avec les tokens
{NAME},{BRAND},{CATEGORY},{DESCRIPTION},{PRICE},{PATTERN},{LANG_NAME},{MIN_LENGTH},{MAX_LENGTH},{AB_VARIANTS},{EXISTING}.
Marquez un template « par défaut » pour qu’il s’applique automatiquement à son triplet.
Anti-duplication
Avant de conserver une variante, le module la compare aux variantes déjà stockées :
- Hash exact (sha1 de la version normalisée) — rejet immédiat en cas de duplicata parfait.
- Similarité Jaccard sur les ensembles de mots normalisés (minuscules, sans accents) — rejet si la similarité dépasse le seuil configuré.
Une variante rejetée est automatiquement régénérée par l’IA (dans la limite des tentatives du lot).
Tableau de bord
La page Dashboard agrège : nombre de jobs (total, en attente, terminés), variantes générées et actives, générations réussies / échouées, tokens consommés (entrée + sortie), derniers jobs et dernières générations. Utilisez-la pour surveiller le budget IA et détecter les erreurs de provider.
Multi-boutique
Le module lit et écrit les valeurs en tenant compte du contexte boutique lorsque la table *_lang concernée possède une colonne id_shop. Sélectionnez la boutique cible dans le formulaire de génération en masse si votre installation est multi-boutique.
Dépannage
- « FAIL » au test de connectivité — vérifiez la clé API, le solde de crédits du provider, et que votre serveur autorise les connexions HTTPS sortantes (cURL) vers api.anthropic.com, api.openai.com ou api.mistral.ai.
- Job bloqué en « running » — relancez un lot manuellement depuis la page détail, ou attendez le prochain passage CRON. Un job peut toujours être annulé puis relancé.
- Variantes vides ou tronquées — augmentez le timeout HTTP dans les Paramètres, ou choisissez un modèle plus rapide.
- 403 sur l’URL CRON — le token de l’URL ne correspond plus (il a peut-être été régénéré). Copiez à nouveau l’URL depuis les Paramètres.
- Rien ne se génère pour certaines entités — si « Ignorer les non-vides » est actif, les entités déjà renseignées sont sautées volontairement. Cochez « Écraser » pour forcer.
Désinstallation
La désinstallation supprime les 6 tables du module et ses clés de configuration. Les méta générées et déjà écrites sur vos produits, catégories et images sont conservées : elles font partie de votre catalogue.