SEO Revolution : installation et aide
Démarrage rapide
- Sauvegardez la base de données, les règles d'URL et les fichiers SEO à la racine, puis téléversez et installez mprseorevolution.
- Ouvrez SEO Revolution > Tableau de bord, sélectionnez la boutique souhaitée et lancez "Tools" > "Integrity Check".
- Ouvrez "Global Settings" et vérifiez "Enable SEO Revolution" et "SEO Features" ; vérifiez la responsabilité des sorties avant d'en activer qui se chevauchent.
- Configurez une page de test avec Contenu > "Meta Tags" et les modèles d'entité, puis examinez son titre, sa description et son H1.
- Configurez les éléments partagés Hreflang, Règles canoniques et Contenu > Données structurées uniquement pour les sorties prévues.
- Configurez SEO technique > Plan du site et "Robots.txt" ; vérifiez l'état de publication/d'application des règles SEO et examinez les URL obtenues.
- Configurez la commande cron partagée, vérifiez le résultat d'une tâche et testez une redirection, une page manquante et les métadonnées de la boutique.
Nécessite PrestaShop 1.6.0.0 ou ultérieur et PHP 7.1 ou ultérieur.
Manuel de configuration
Installer et sélectionner la boutique
Sauvegardez la base de données, les réglages SEO actuels, les règles de routage, le fichier robots.txt à la racine et les fichiers générés. Téléversez et installez mprseorevolution, puis cliquez sur "Configure" pour ouvrir SEO Revolution > Tableau de bord. Lancez "Tools" > "Integrity Check" avant de configurer une sortie en production.
Sélectionnez une boutique avant d'enregistrer des réglages SEO propres à celle-ci ou des dérogations aux politiques. Vérifiez les permissions des employés du back-office si un compte peut consulter une page sans pouvoir l'enregistrer. L'installation accorde l'accès au profil de la personne authentifiée qui l'effectue ; les réparations ultérieures du menu n'accordent pas l'accès à tous les employés.
Le menu distingue "Redirections", SEO technique, Contenu, "Linking", "Indexing", "Tools", Paramètres et "Global Settings". Commencez par les métadonnées d'une page, puis ajoutez les autres sorties nécessaires. Désignez un seul responsable pour chaque sortie canonical, hreflang, de données structurées, de sitemap et de suivi.
Configurer "Global Settings"
Ouvrez SEO Revolution > "Global Settings". L'entrée de menu Paramètres ouvre le même formulaire. Les valeurs ci-dessous sont les valeurs par défaut du formulaire ; une boutique qui a déjà enregistré des réglages conserve ses propres valeurs.
Général
-
"Enable SEO Revolution". Valeur par défaut du formulaire :
1. Cet interrupteur est enregistré mais n'active ni ne désactive actuellement la sortie de la boutique. Pour arrêter les modifications SEO et ne garder que le suivi, désactivez "SEO Features" ; pour tout arrêter, désactivez le module dans le gestionnaire de modules. -
"Trailing Slash Handling". Enregistre votre préférence pour conserver, ajouter ou supprimer la barre oblique finale. Par défaut :
none. Ce champ ne modifie pas les URL canoniques. Configurez ce comportement dans les réglages canonical partagés et vérifiez les redirections séparément. -
"SEO Features". Par défaut : activé. Désactivez cette option si le module doit uniquement assurer le suivi. Il ignore alors ses sorties SEO et ses modifications de routes, redirections et fichiers, tout en conservant le suivi/les téléversements Google configurés. Videz le cache des pages après modification.
-
"Friendly photo deep-link URLs (/product/photo/N)". Par défaut : désactivé. Activez cette option uniquement si ce module doit gérer ces routes. Sinon, les liens profonds d'images utilisent des paramètres de requête.
La génération du sitemap, la publication de robots.txt, les règles de politique SEO et certaines redirections sont désactivées sur une nouvelle installation. Ces tâches conservent les fichiers existants tant qu’elles sont désactivées. Global Settings ne propose aucun interrupteur pour les activer. Vérifiez leurs résultats avant d’utiliser les fichiers produits.
Liens externes et pagination
- "Add nofollow to external links". Par défaut :
1. Le réglage est enregistré, mais le module ne réécrit pas encore les liens externes ; aucunnofollown'est donc ajouté. - "Open external links in new tab". Par défaut :
1. La préférence est enregistrée, mais elle n’ouvre pas les liens externes dans un nouvel onglet. - "Add noopener to external links". Par défaut :
1. Le réglage est enregistré, mais le module ne réécrit pas encore les liens externes ; aucunnoopenern'est donc ajouté. - "Whitelist domains". Enregistre les domaines exemptés des préférences du formulaire global. Par défaut : vide. Saisissez un domaine par ligne.
- "Add rel="next/prev"". Valeur par défaut du formulaire :
1. Cette préférence globale est enregistrée, mais ne contrôle pas les liens de pagination. Vérifiez les liens des pages suivantes. - "Canonical to first page". Enregistre la préférence de canonical vers la première page. Valeur par défaut du formulaire :
0. Vérifiez sa cohérence avec les réglages canonical partagés et ceux de pagination des entités. - "Noindex paginated pages". Enregistre la préférence globale noindex des pages suivantes. Valeur par défaut du formulaire :
0. Utilisez Règles SEO et examinez la sortie robots effective.
Plusieurs champs de ce formulaire sont enregistrés mais ne modifient pas l’affichage en boutique : "Enable SEO Revolution", "Trailing Slash Handling", les interrupteurs "External Links" et "Pagination", "Enable hreflang", les champs Open Graph et Twitter ainsi que les interrupteurs Schema.org. Modifiez ces sorties sur leurs propres pages ("Open Graph & Social", "Structured Data") et vérifiez la page publique après l'enregistrement. Pour arrêter toute sortie SEO et ne garder que le suivi, désactivez "SEO Features".
Open Graph / réseaux sociaux et surveillance
- "Enable Open Graph tags". Valeur par défaut du formulaire :
1. Ce champ est enregistré mais la boutique ne le lit pas. La sortie Open Graph suit l'interrupteur "Enable Open Graph" de la page "Open Graph & Social", activé (1) après l'installation. - Activer les Twitter Cards. Valeur par défaut du formulaire :
0. Ce champ est enregistré, mais n’active ni ne désactive les Twitter Cards. Elles sont activées (1) après l’installation. - "Twitter handle". Vide au départ. La valeur est enregistrée, mais ne renseigne pas la balise
twitter:site. Aucun formulaire ne définit la valeur distincte utilisée pour cette balise ; elle est donc absente avec la configuration par défaut. - "Default social image". Téléverse l'image de repli utilisée lorsqu'une page n'a pas d'image Open Graph spécifique ; par défaut : ``.
- "Ignore exploit probes". Empêche le stockage des URL manifestement issues de scanners ou mal formées dans le moniteur 404 ; par défaut :
1. - "Ignored 404 URL patterns". Ajoute des règles d'exclusion personnalisées par sous-chaîne, caractère générique ou
regex:au moniteur 404 ; par défaut : ``.
Nombre maximal de lignes 404 enregistrées vaut 10000 par défaut. Durée de conservation des 404 en jours vaut 0 par défaut, soit aucune limite d'ancienneté. Utilisez-les pour limiter vos données de surveillance. Le filtre par défaut des sondes d'exploitation est activé ; "Ignored 404 URL patterns" accepte les règles prises en charge par sous-chaîne, caractère générique et regex:.
Le formulaire global expose encore "Enable Schema.org markup", "Organization Schema", "WebSite Schema", "Product Schema" et "Include Reviews in Product Schema". Leurs valeurs par défaut affichées sont respectivement activé, activé, activé, activé et désactivé. Configurez les réglages partagés effectifs des données structurées sous Contenu > Données structurées et vérifiez-y leur état de préparation ; ne considérez pas un ancien interrupteur global comme la configuration partagée complète.
Définir les modèles d'entité et les métadonnées individuelles
Utilisez Contenu > "Meta Tags" pour repérer les titres et descriptions manquants ou inadaptés. Modifiez "Meta title" et "Meta description" d'une page lorsqu'elle nécessite un texte explicite. Utilisez l'éditeur de modèles par type d'entité pour des modèles réutilisables de titre, description, H1, URL, Open Graph, code head personnalisé et pagination. Les contextes produit, catégorie, CMS, fabricant et fournisseur ont des variables différentes.
Pour les produits, vous pouvez utiliser :
%product_name% | %product_brand% | %shop_name%
Buy %product_name% in %product_category% from %shop_name%. Price: %product_price%.
Pour la pagination des catégories :
%category_name% - Page %page_number% | %shop_name%
Browse %category_products_count% products in %category_name%. Page %page_number%.
Utilisez "Bulk Operations" pour appliquer à grande échelle des modifications vérifiées. Testez d'abord une entité et examinez son titre, sa description et son H1 finaux. Ne supposez pas qu'un brouillon ou un modèle enregistré a déjà remplacé les métadonnées natives.
Le module stocke les informations canonical, robots, Open Graph, head personnalisé et redirection de chaque page via son registre de pages et les éditeurs associés. Utilisez l'éditeur adapté au type d'entité. Limitez le code head personnalisé aux sorties que vous souhaitez publier.
Les développeurs peuvent lire le registre depuis un autre module :
require_once _PS_MODULE_DIR_ . 'mprseorevolution/vendor/autoload.php';
$registry = new \MPRSEORevolution\Classes\Registry\PageRegistry();
$productPages = $registry->getPagesByType(
\MPRSEORevolution\Classes\Registry\PageRegistry::TYPE_PRODUCT
);
Configurer les URL canoniques, hreflang et les politiques
Utilisez SEO technique > Règles canoniques pour la configuration canonical partagée. Le paquet canonical est activé par défaut, avec les minuscules activées, la barre oblique finale forcée désactivée et la suppression de pagination désactivée. Sa liste de paramètres de suivi est :
utm_source,utm_medium,utm_campaign,utm_term,utm_content,fbclid,gclid,msclkid
Par défaut, chaque page paginée utilise sa propre URL canonique (self). Examinez le comportement canonical de la première page, des pages suivantes, des URL avec paramètres de suivi et des déclinaisons produit. Un lien HTML doit mener à la page canonique prévue sans boucle inattendue.
Ouvrez Hreflang > Configuration et Hreflang > Groupes. Ces écrans sont partagés avec Hreflang Manager. Configurez-y les langues actives, les connexions automatiques/manuelles et le choix x-default. L'ancienne liste globale de préférences hreflang sur deux lignes ne décrit pas cet écran actuel. Testez les liens alternatifs réels dans chaque boutique/langue et évitez de présenter des traductions non publiées comme des alternatives utilisables.
Ouvrez SEO technique > Règles SEO pour les valeurs par défaut par type de page et les dérogations par module. Choisissez une boutique avant d'enregistrer la matrice. Conservez les choix hérités jusqu'à ce qu'une politique explicite Index/Noindex ou activée/désactivée soit nécessaire. Vérifiez ensemble les métadonnées/en-têtes robots finaux, le canonical et l'inclusion dans le sitemap.
Configurer les redirections, les produits retirés et la surveillance 404
Ouvrez "Redirections" > Redirections. Créez une règle avec URL source, Page cible, Type de redirection, éventuellement Commentaire, et Actif. Le formulaire propose 301, 302 et 410. Laissez la cible vide pour 410 Gone. Testez la source et la destination avant d'appliquer une règle générale.
Les redirections et la surveillance 404 sont activées (1) au départ. Global Settings ne propose pas de réglages distincts pour ces fonctions. Moniteur 404 enregistre les requêtes front-office manquantes avec URL, référent, user-agent, IP, nombre d'occurrences et état de résolution, sous réserve des exclusions et limites. Appelez un chemin de test manquant sans conséquence et examinez son enregistrement.
Utilisez "Redirections" > Produits retirés pour le workflow disponible de cycle de vie produit. Examinez son état lorsque l'application des règles SEO est inactive.
Configurer robots.txt
Ouvrez SEO technique > "Robots.txt". Examinez les règles user-agent et l'aperçu du contenu généré avant publication. Le gestionnaire peut sauvegarder un ancien fichier racine et propose des opérations de restauration/génération par défaut. Conservez une sauvegarde distincte de votre fichier racine d'origine.
Le contenu généré peut inclure des règles user-agent et une référence au sitemap. Utilisez l'URL réelle du sitemap servi par votre boutique. Ne remplacez pas un fichier en production par une liste d'exemples de chemins sans examiner les chemins propres à la boutique et l'état actuel de publication du module.
Vérifiez que le processus web peut écrire dans le fichier racine prévu et à l'emplacement de sauvegarde. Si la publication est ignorée avec enforcement_off, examinez l'état d'application des règles SEO du déploiement. Vérifiez la réponse HTTP de /robots.txt après enregistrement. Bloquer l'exploration d'une URL peut empêcher un robot de voir les métadonnées de cette page.
Configurer et générer les sitemaps
Ouvrez SEO technique > Plan du site, puis Paramètres Sitemap. Utilisez ses écrans d'URL/journaux pour examiner les sorties générées et leur validation.
Contenu et formats
Produits, Catégories, Pages CMS, Articles de blog, Pages SEO des filtres, Pages SEO de recherche, les pages du cœur, les pages de modules, les images et hreflang sont activés par défaut. Fabricants et Fournisseurs sont désactivés par défaut dans les réglages du sitemap. Le contenu blog/filtre/recherche nécessite le fournisseur correspondant installé. Pages ajoutées par d'autres modules contrôle le groupe de fournisseurs supplémentaires, avec des choix distincts pour les FAQ, la documentation, la base de connaissances, les vitrines et les pages similaires.
Les valeurs initiales de Priorité & Fréquence sont :
| Type | Priorité | Fréquence |
|---|---|---|
| Accueil | 1.0 | quotidienne |
| Produit | 0.8 | hebdomadaire |
| Catégorie | 0.7 | hebdomadaire |
| CMS | 0.5 | mensuelle |
| Fabricant | 0.4 | mensuelle |
| Fournisseur | 0.3 | mensuelle |
| Page du cœur | 0.3 | mensuelle |
| Page SEO de recherche | 0.5 | mensuelle |
Inclure les sitemaps d'images, Inclure les liens hreflang, Diviser en plusieurs fichiers et Générer le plan du site HTML sont activés par défaut. Nombre max. d’URL par fichier vaut 50000 par défaut. Générer le flux RSS est désactivé par défaut. Gardez le fractionnement activé pour un catalogue important et examinez l'index ainsi que les fichiers enfants sous /sitemaps/.
Vérification et soumission
| Champ | Valeur par défaut | Quand la modifier |
|---|---|---|
| Vérifier les URL | Activé | Désactivez uniquement si votre workflow de génération assure la validation requise autrement. |
| Requêtes simultanées | 1 | Gardez une valeur basse en production ; le vérificateur la limite à 3. |
| URLs à vérifier par exécution cron | 25 | Augmentez après avoir mesuré le coût des requêtes et du serveur. |
| URLs de préchauffage cache par exécution cron | 0 | Utilisez un budget positif uniquement pour préchauffer le cache. |
| "Internal link targets per idle cron run" | 25 | Mettez 0 pour désactiver l'actualisation des cibles internes pendant les exécutions cron inoccupées. |
| Délai entre les lots | 500 ms | Augmentez pour réduire la fréquence des requêtes. |
| Délai d’expiration des requêtes | 10 secondes | Adaptez aux temps de réponse réels du serveur. |
| Réutiliser la validation pendant | 30 jours | Utilisez 0 pour exiger une nouvelle validation à chaque génération. |
| Échantillon de contrôle HTTP | 2 pour cent | Modifiez la proportion contrôlée malgré une validation réutilisable. |
Soumettre le sitemap à Google Search Console et Ping sitemap Bing hérité sont désactivés par défaut. L'action Google utilise une connexion Search Console authentifiée. Ne vous fiez pas aux points de terminaison de ping anonymes. Générez et examinez d'abord les fichiers, puis soumettez le sitemap vérifié via la connexion configurée ou vos outils pour webmasters.
Le module fournit une URL de sitemap. Utilisez l'URL d'index réelle affichée/générée par votre installation, avec les chemins de la boutique. Une génération cron ignorée peut indiquer une application des règles SEO inactive ; vérifiez le résultat au lieu de supposer que le fichier a été actualisé.
Configurer le SEO des images et les liens internes
SEO des images
Ouvrez Contenu > "Image SEO" depuis les outils de contenu disponibles. Générer automatiquement les textes alternatifs est activé par défaut. Modèle de texte alternatif utilise %product_name% en repli. Le générateur produit accepte :
%product_name% - %category% - %manufacturer% - image %position%
Il accepte aussi %brand% et %reference%. Le paramètre de position commence à un lorsqu'une position est disponible. Examinez les enregistrements sans texte alternatif, générez un petit lot et vérifiez les attributs alt des images dans votre thème. Les métadonnées de nom de fichier sont stockées séparément ; le module ne renomme pas les fichiers d'images eux-mêmes.
Le formulaire SEO des images ne propose aucun réglage de qualité WebP ni de chargement différé. Les anciens réglages n’activent ni la conversion des images ni le chargement différé. Gérez ces opérations avec votre outil de traitement des images.
Liens internes et audit des liens
Ouvrez "Linking" > Liens internes. Configurez les groupes de liens, les URL cibles, le ciblage langue/boutique et les règles de contenu nécessaires. Les limites initiales sont Liens maximum par page = 5 et Liens maximum par groupe = 3. Balises HTML incluses vaut p,div,span,blockquote,li,td par défaut.
Empêcher les href en double, Empêcher plusieurs liens automatiques dans le même élément, Distribution proportionnelle de la limite globale, Distribution uniforme des liens dans le texte, Ignorer l'URL de la page actuelle et Exclure les titres sont activés par défaut. Empêcher le lien dans un parent déjà lié et Exclure le texte en gras sont désactivés par défaut. La cible par défaut est _self, rel est vide et la classe CSS est mpr-autolink. Le profilage de débogage est désactivé par défaut avec une liste d'IP vide. Activez-le uniquement pour un diagnostic volontaire.
L'ancienne préférence CSS included_selectors a été retirée. Le module ajoute des liens aux contenus enregistrés pris en charge. Testez un exemple de contenu produit, CMS et catégorie au lieu de chercher l'ancien champ de sélecteur.
Utilisez "Linking" > "Link Audit" pour analyser les sources et vérifier les cibles. Les budgets par défaut configurés sont 2000 sources, 50 cibles et 168 heures d'ancienneté. Un module autonome mprinternallinking actif peut gérer l'injection en direct à la place des groupes de la suite. Lisez l'avis de responsabilité avant d'ajuster le mauvais ensemble de règles.
Utilisez "Linking" > "Backlinks" pour importer ou gérer les enregistrements de backlinks et vérifier les sources. Les vérifications automatiques sont activées par défaut, avec un intervalle de 7 jours et une limite de lot de 50. Utilisez "Disavow" pour gérer/exporter les entrées à soumettre ; enregistrer une liste ne revient pas à la soumettre à un service externe.
Configurer la génération IA, Indexing API et Search Console
Génération IA
Ouvrez "Tools" > "AI Generation" et ses réglages. Définissez Fournisseur principal (openai initialement) et la clé appropriée : Clé API OpenAI, Clé API Anthropic ou Clé API Gemini. Les modèles par défaut sont gpt-4, claude-3-sonnet-20240229 et gemini-pro. Sélectionnez un modèle accepté par votre fournisseur configuré et testez un brouillon.
Prompt de génération de titre et Prompt de génération de description sont vides par défaut. Longueur max. du titre vaut 60, Longueur max. de la description vaut 160 et Style d'écriture vaut professional par défaut. Examinez les brouillons générés avant de les accepter ou d'appliquer une opération en masse. La génération envoie le contexte d'entité au fournisseur choisi ; cela est distinct du suivi des conversions clients/commandes.
Indexing API
Ouvrez "Indexing" > API d'indexation. "Enable Google Indexing API" et Activer Bing IndexNow sont désactivés par défaut. Configurez les champs de compte de service/clé du fournisseur utilisé. "Queue product updates" est désactivé par défaut pour les deux fournisseurs.
Le quota quotidien de Google côté module vaut 200 par défaut, la taille de lot 50 et le délai de vérification 48 heures. Le quota Bing vaut 10000 et la taille de lot 100 par défaut. Les valeurs de nouvelle tentative de file sont 5 tentatives, 30 minutes d'attente de base et 21 jours avant une nouvelle soumission. Examinez le périmètre sélectionné, le mappage des niveaux et la racine de catégorie de service avant une mise en file générale. Une URL mise en file/soumise ne confirme pas son indexation par un moteur de recherche.
Search Console
Ouvrez "Indexing" > Search Console. Configurez et terminez le workflow de connexion/autorisation proposé, sélectionnez la bonne propriété de site et lancez une petite synchronisation. Examinez les résultats de requêtes, pages, pays, appareils et inspection d'URL, ainsi que les messages des tâches. Des identifiants et une autorisation sur la propriété choisie sont nécessaires. Une propriété GA4 configurée ne constitue pas une connexion Search Console.
Configurer LLMs.txt
Ouvrez SEO technique > LLMs.txt. Activer llms.txt et Générer aussi llms-full.txt sont désactivés par défaut. Langue = Langue par défaut de la boutique initialement. Catégories, Produits, Pages CMS et Articles de blog sont inclus par défaut ; Marques / Fabricants est désactivé par défaut.
Produits max. vaut 50, Articles de blog max. vaut 30 et Tri des produits vaut Meilleures ventes par défaut. Utilisez Plus récents en premier, Nom A-Z ou Prix décroissant selon le besoin. Exclure les ID CMS, Description, À propos et les sections personnalisées stockées sont vides par défaut. Excluez les pages privées ou non pertinentes avant la génération.
Enregistrez, générez et examinez l'état de fichier affiché et l'aperçu. Vérifiez /llms.txt et, si activé, /llms-full.txt dans la boutique souhaitée. Le fichier complet inclut du contenu développé. Assurez-vous que l'emplacement de sortie est accessible en écriture et examinez les avertissements de responsabilité/publication au lieu d'écraser un fichier racine sans rapport.
Configurer le suivi Google et les téléversements de conversions
Ouvrez la zone Google Analytics dans "Global Settings" et examinez les commandes de responsabilité du suivi. Saisissez des identifiants et des ID uniquement pour les sorties confiées à ce module. Les événements navigateur et serveur Google/GA4 nécessitent la configuration et les décisions de consentement appropriées ; un interrupteur activé avec des ID vides ne constitue pas une intégration fonctionnelle.
Les identifiants/chemins sont vides par défaut, sauf mention contraire.
| Champ du back-office | Valeur par défaut du formulaire | Conseils de configuration |
|---|---|---|
| "Enable Google Tracking" | 1 |
Interrupteur principal du suivi GA4 et Google Ads géré par SEO Revolution. |
| "GA4 Measurement ID" | empty |
Votre ID de mesure GA4 (par exemple G-XXXXXXXXXX). Utilisé pour la balise de suivi du front-office. |
| "Google Tag Gateway (first-party tagging)" | 0 |
Charge la balise Google et envoie la collecte GA4 via votre propre chemin first-party (Cloudflare Google Tag Gateway) pour résister à ITP et aux bloqueurs de publicité. Le gateway doit d'abord être configuré sur le CDN pour l'ID de mesure GA4, avec la configuration automatique de balise (injection) désactivée : ce module produit l'unique chargeur de balise. |
| "Tag Gateway measurement path" | empty |
Chemin first-party de Cloudflare Google Tag Gateway, par exemple /v2ur. Laissez vide à l'activation pour générer un chemin aléatoire de 4 caractères. |
| "GA4 Property ID" | empty |
ID numérique de propriété GA4 (par exemple 478319267). Requis pour la Data API (rapports du tableau de bord). |
| "Service Account Key Path" | empty |
Chemin absolu du fichier de clé JSON du compte de service Google. Laissez vide pour utiliser la valeur par défaut. |
| "User ID Tracking" | 1 |
Envoie à GA4 un hachage SHA256 salé de l'ID client pour le suivi entre appareils. Les ID clients bruts ne sont jamais envoyés. |
| "IP Anonymization" | 1 |
Anonymise les adresses IP des visiteurs (conformité GDPR). |
| "Measurement Protocol API Secret" | empty |
Utilisé uniquement côté serveur pour le suivi des achats GA4. Jamais rendu dans le navigateur. |
| "Server-Side Purchase Tracking" | 1 |
Envoie les achats GA4 via Measurement Protocol au lieu de l'événement d'achat navigateur lorsque l'API Secret est configuré. Les changements différés d'état payé utilisent la même file transaction_id. |
| "GA4 Debug Mode" | 0 |
Envoie debug_mode=true pour GA4 DebugView. Gardez désactivé en production. |
| "Exclude Employees" | 1 |
N'injecte pas le suivi Google lorsqu'un employé du back-office parcourt la boutique. |
| "Server Event Log Retention" | 90 |
Nombre de jours de conservation des journaux d'événements Measurement Protocol côté serveur. Mettez 0 pour une conservation illimitée. |
| "Google Signals" | 0 |
Active la prise en charge de Google Signals dans la configuration gtag. Nécessite aussi son activation dans GA4. |
| "High-Intent Product Engagement" | 0 |
Envoie high_intent_product_engagement à GA4 lorsque les acheteurs parcourent les images produit, changent de déclinaison, ouvrent des onglets de détail ou restent assez longtemps sur une page produit. À utiliser pour les audiences/signaux secondaires, pas pour les enchères d'achat principales. |
| "Gallery Views Threshold" | 3 |
Nombre d'interactions distinctes avec les images de galerie nécessaire avant le déclenchement de l'événement de forte intention. Par défaut : 3. |
| "Dwell-Time Threshold" | 45 |
Secondes sur une page produit avant que l'événement de forte intention puisse se déclencher même sans autre interaction admissible. Par défaut : 45. |
| "Product Interaction Signals" | 0 |
Envoie des événements secondaires d'interaction produit à forte intention tels que select_option, configurator_complete et add_to_cart_with_options. Gardez désactivé sans accord explicite de la boutique. |
| "Record Product Interaction Signals" | 0 |
Stocke côté serveur les événements first-party d'interaction produit consentis pour les téléversements d'audiences Customer Match. Nécessite les signaux d'interaction produit et le consentement explicite du client. |
| "Product Option Signal Throttle" | 1500 |
Millisecondes minimales entre deux signaux d'option produit répétés avec la même signature d'événement. Par défaut : 1500. |
| "Browse-Depth Signals" | 0 |
Envoie des événements secondaires d'audience GA4 lorsque les acheteurs consultent plusieurs produits ou pages de catégorie/liste. L'achat reste l'unique conversion principale. |
| "Product Depth Threshold" | 3 |
Nombre de pages produit distinctes dans une session navigateur avant le déclenchement de deep_browse_products. Par défaut : 3. |
| "Category Depth Threshold" | 2 |
Nombre de pages de catégorie/liste distinctes dans une session navigateur avant le déclenchement de deep_browse_categories. Par défaut : 2. |
| "Record Browse-Depth Signals" | 0 |
Stocke côté serveur les événements consentis de profondeur de navigation pour les workflows d'audience first-party. Nécessite les signaux de profondeur de navigation et le consentement explicite du client. |
| "Browse-Depth Signal Throttle" | 300 |
Secondes minimales avant qu'un même événement de profondeur de navigation puisse être renvoyé à mesure que la profondeur augmente. Par défaut : 300. |
| "Browse-Depth Session Window" | 1800 |
Secondes avant la réinitialisation du compteur de profondeur de navigation côté navigateur. Par défaut : 1800. |
| "Retail Ecommerce Events" | 0 |
Envoie view_item, view_item_list, select_item, add_to_cart, remove_from_cart, view_cart et begin_checkout à GA4 et au remarketing dynamique Google Ads (PrestaShop 1.7 et versions ultérieures). Les changements de panier sont enregistrés côté serveur : les changements de quantité comptent sur chaque page de panier et de commande, et sont envoyés depuis le navigateur du visiteur avec son consentement. |
| "Ecommerce Item ID" | auto |
ID d'article envoyé avec chaque événement e-commerce, achats inclus. Il doit correspondre à l'ID d'offre Merchant Center pour que Google Ads fasse le lien avec le flux. Automatique suit le flux publié par Google Merchant (mprgooglemerchant) ; sans lui, l'ID de produit et de déclinaison est utilisé. |
| "Ecommerce Item ID Prefix" | empty |
Préfixe des ID d'offres Merchant Center, par exemple dme-r1- lorsque le flux Google Merchant publie ses produits sous une nouvelle identité. S'applique à chaque événement e-commerce : vente au détail, engagement produit et achats. Stocké par boutique : une boutique envoie un seul préfixe, donc tous ses flux promus doivent utiliser le même (les préfixes mixtes dans une boutique ne sont pas pris en charge). Lettres minuscules, chiffres et traits d'union, 32 caractères au maximum, commençant par une lettre et finissant par un trait d'union ; la partie précédant le dernier trait d'union doit contenir une lettre. Laissez vide pour des ID produits simples. Modifiez uniquement lorsque Google Ads promeut les offres préfixées. Un achat mis en file d'envoi serveur conserve les ID d'articles en vigueur lors de sa mise en file. |
| "Production Hostnames" | empty |
Noms d'hôtes de production séparés par des virgules, par exemple example.com, www.example.com. Si renseigné, la balise Google se charge uniquement sur ces hôtes et les téléversements serveur GA4, Google Ads et Customer Match s'exécutent uniquement pour une boutique dont le domaine figure dans la liste ; une copie de préproduction avec la configuration de production n'envoie donc rien à Google. Laissez vide si la boutique n'a pas de copie de préproduction. |
| "Retry Failed Server Purchases" | 1 |
Utilise MPR Cron pour réessayer les envois d'achats GA4 Measurement Protocol échoués jusqu'à leur acceptation par Google. |
| "Retry Batch Size" | 20 |
Nombre maximal d'événements d'achat en file à réessayer par exécution cron. |
| "Maximum Retry Attempts" | 0 |
0 signifie réessayer indéfiniment jusqu'à l'acceptation par Google. Utilisez un nombre positif pour abandonner après ce nombre de tentatives. |
| "Google Ads Conversion ID" | empty |
ID Google Ads, par exemple AW-123456789. |
| "Google Ads Purchase Label" | empty |
Libellé de conversion d'achat Google Ads. Doit identifier la même action de conversion que celle configurée pour le téléversement serveur pour que la déduplication transaction_id soit valide. |
| "Google Ads Purchase Conversion" | 1 |
Envoie des événements dynamiques de conversion d'achat avec valeur de commande, devise, transaction_id et new_customer. |
| "Enhanced Conversions" | 0 |
Envoie des données de commande first-party hachées en SHA256 avant la conversion d'achat Google Ads pour améliorer l'attribution. |
| "Queue Google Ads Click Conversions" | 1 |
Stocke les commandes admissibles avec gclid, gbraid ou wbraid pour leur téléversement ultérieur via la Google Ads API. |
| "Upload Google Ads Click Conversions" | 0 |
Envoie les conversions de commande en file via l'API. L'envoi des conversions Google Ads côté navigateur est désactivé uniquement pour une ligne active de téléversement réel utilisant le mappage actuel d'action de conversion ; les lignes de validation seule et terminales ne le désactivent jamais. |
| "Server-side Upload Without the Browser Tag" | 0 |
Exécute le téléversement d'achat (capture des clics, enregistrement du consentement, file et worker cron) alors que le suivi Google du navigateur est désactivé, car une autre balise (par exemple Google Tag Manager) signale l'achat dans le navigateur. Le téléversement doit viser l'action de conversion de cette balise et un domaine de boutique autorisé est requis. |
| "Upload Transaction ID" | order_reference |
Doit être le transaction_id envoyé par la balise navigateur pour le même achat, sinon Google le compte deux fois. La référence de commande est la valeur envoyée par la propre balise du module. |
| "Uploaded Purchases" | paid |
Doit correspondre aux achats signalés par la balise navigateur. Placed : chaque commande passée en boutique lors de la commande, quel que soit le mode de paiement, sauf erreurs de paiement et annulations (balise de page de confirmation) ; les commandes du back-office ne sont jamais téléversées. |
| "Upload Purchases Without a Click ID" | 0 |
Téléverse aussi les achats sans gclid, gbraid ni wbraid, rapprochés uniquement par email et téléphone hachés de l'acheteur (nécessite "Enhanced Conversions"). Uniquement avec ad_storage et ad_user_data accordés. Transport Data Manager uniquement. |
| "Upload Delay (minutes)" | 0 |
Attend cette durée après la commande avant le premier téléversement pour que la balise navigateur atteigne Google d'abord ; le worker cron envoie ensuite. 0 envoie lors de la commande. Maximum 1440. |
| "Allowed Upload Domain" | empty |
Domaine de la boutique de production (plusieurs : séparés par des virgules). Si renseigné, les téléversements s'exécutent uniquement lorsque chaque domaine de boutique est autorisé et que la politique d'écriture sortante du parc autorise les écritures ; une copie de développement, préproduction ou restaurée conserve donc sa file. Requis pour le téléversement serveur sans balise navigateur. |
| "Google Ads Upload Transport" | legacy |
Legacy utilise Google Ads API UploadClickConversions. Data Manager utilise datamanager.googleapis.com events:ingest avec des identifiants OAuth à jeton de renouvellement. |
| "Google Ads API Version" | v24 |
Version de Google Ads API pour le point de terminaison de téléversement, par exemple v24. |
| "Google Ads Developer Token" | empty |
Jeton développeur de Google Ads API Center. Les jetons de mode test fonctionnent uniquement avec des comptes de test. |
| "Google Ads Login Customer ID" | empty |
ID de compte administrateur sans traits d'union. Laissez vide uniquement si le jeton API ne nécessite pas de client de connexion MCC. |
| "Google Ads Customer ID" | empty |
ID du compte Google Ads cible sans traits d'union. |
| "Data Manager Operating Account ID" | empty |
ID de compte Google Ads utilisé comme Data Manager operatingAccount.accountId. Laissez vide pour utiliser l'ID client Google Ads. |
| "Google Ads Conversion Action" | empty |
ID numérique d'action de conversion ou nom de ressource complet customers/{customer_id}/conversionActions/{action_id}. Doit être l'action représentée par le Purchase Label du navigateur. |
| "Google Ads Service Account Key Path" | empty |
Chemin absolu de la clé JSON du compte de service. Laissez vide pour réutiliser le chemin de clé de service GA4, ou utilisez les identifiants OAuth ci-dessous. |
| "Google Ads OAuth Credentials Path" | empty |
Chemin absolu d'un fichier JSON OAuth avec client_id, client_secret, refresh_token et éventuellement developer_token. |
| "Google Ads Upload Batch Size" | 20 |
Nombre maximal de conversions en file à téléverser par exécution cron. |
| "Google Ads Upload Max Attempts" | 0 |
0 utilise la valeur sûre par défaut de 10 tentatives. Utilisez un nombre positif pour passer en échec permanent après ce nombre d'échecs réels de téléversement ; les reports de responsabilité ne consomment pas ce budget. |
| "Google Ads Click Lookback Days" | 90 |
Durée de conservation et d'utilisation de l'attribution gclid, gbraid ou wbraid avant une commande. Limitée à 90 jours. |
| "Google Ads Validate Only" | 0 |
Valide les téléversements en file sans enregistrer de conversions dans Google Ads. |
| "Google Ads Conversion Value" | total_incl_tax |
Contrôle la valeur de commande utilisée par les conversions d'achat Google Ads navigateur et serveur. |
| "Google Ads Ad User Data Consent" | UNSPECIFIED |
Valeur de consentement facultative envoyée avec les conversions de clics hors ligne. |
| "Google Ads Customer Match Upload" | 0 |
Téléverse les audiences produit à forte intention admissibles et consenties vers la liste d'utilisateurs Google Ads Customer Match configurée. Signal d'audience secondaire uniquement ; pas une conversion. |
| "Customer Match Token Eligibility Confirmed" | 0 |
Garde-fou requis pour la restriction Customer Match de Google du 1er avril 2026 : activez uniquement si ce jeton développeur a déjà utilisé Customer Match ou si le repli Data Manager API n'est pas requis. |
| "Customer Match User List Resource" | empty |
Nom de ressource complet de liste d'utilisateurs Google Ads, par exemple customers/1234567890/userLists/987654321. |
| "Customer Match Lookback Days" | 30 |
Durée d'admissibilité des événements consentis d'intention produit au téléversement d'audience. Les acheteurs récents de cette période sont exclus. Par défaut : 30. |
| "Customer Match Batch Size" | 5000 |
Nombre maximal de membres d'audience Customer Match en file à téléverser par exécution cron. Par défaut : 5000. |
Pour Google Tag Gateway, l'ID de balise Google provient de la configuration et non d'une chaîne fixe. Configurez le chemin de mesure, "CF Zone ID" et "CF API Token" avant d'utiliser "Enable Tag Gateway". Utilisez "Disable Tag Gateway" pour annuler cette intégration via l'action disponible. Ne confondez pas les commandes du gateway avec les identifiants d'événements d'achat.
Testez une commande de test payée et comparez l'événement navigateur, l'événement serveur en file et le résultat du téléversement. Vérifiez les ID de transaction et la responsabilité du suivi pour éviter les doublons. Les téléversements d'achats, les nouvelles tentatives et Customer Match sont des tâches distinctes avec des identifiants et des interrupteurs distincts. "Google Ads Validate Only" peut valider la requête de téléversement configurée sans la traiter comme une conversion réellement soumise.
Planifier les tâches et vérifier la boutique
Utilisez le jeton affiché dans votre administration cron MPR partagée. Le point d'entrée cron à la racine de la suite accepte :
* * * * * php /var/www/html/modules/mprseorevolution/cron.php --token=YOUR_TOKEN --max-tasks=20 --max-seconds=55 --context=cron
Remplacez le chemin et le jeton. Ce lanceur traite les tâches MPR partagées, pas uniquement les tâches SEO. Les arguments CLI pris en charge incluent --token, --max-tasks, --max-seconds, --context et --task pour une tâche de module unique. Examinez la planification enregistrée et le résultat renvoyé avant d'ajouter des entrées au planificateur.
Les tâches couvrent les files configurées de sitemap, exploration, backlinks, audit de liens internes, Search Console, indexation et conversions. Une tâche ne fait rien si sa fonctionnalité est désactivée ou si l'application des règles SEO est inactive ; consultez donc les résultats de chaque file pour voir ce qui a été envoyé.
Vérifiez un produit, une catégorie, une page CMS, une marque et un fournisseur dans chaque langue/boutique requise. Examinez le titre, la description, le H1, le canonical, robots, les liens alternatifs, les sorties Open Graph/Twitter et le JSON-LD. Testez une redirection et une page manquante. Vérifiez l'index du sitemap, les fichiers enfants, le fichier robots à la racine et les éventuels fichiers LLM générés. Confirmez que les liens internes visibles pointent vers des pages publiées. Utilisez les réponses publiques sans cache ainsi que votre cache de pages habituel.
Si une sortie est absente, vérifiez l'interrupteur principal du module, "SEO Features", le contexte boutique, la responsabilité, l'état de préparation des paquets partagés, l'intégration des modèles et le cache des pages. Si des fichiers ou tâches sont ignorés, lisez leur état et celui de l'application des règles SEO. Si une soumission externe échoue, examinez les identifiants concernés, la sélection de propriété/compte et le message de file. Relancez "Tools" > "Integrity Check" après avoir corrigé les problèmes d'infrastructure.
Désinstallation
Exportez ou sauvegardez les métadonnées, redirections, politiques, enregistrements SEO, files de suivi, configuration des identifiants, fichiers générés et sauvegardes des fichiers racine. Supprimez votre entrée de planificateur si aucun autre module MPR n'en a besoin.
La désinstallation restaure d'abord les règles de routage gérées, puis supprime les tâches, le schéma, les menus et la configuration non conservée de la suite. Les tables de sitemap partagées restent lorsque mprsitemapbuilder est installé ; les réglages des paquets partagés peuvent aussi être conservés pour d'autres responsables. Ne supposez pas que la désinstallation restaure chaque fichier racine ou supprime tous les éléments générés. Examinez ensuite robots.txt, les fichiers sitemap/LLM, les correctifs de thème et les URL publiques, en utilisant les sauvegardes pour restaurer si nécessaire.
Vérifiez les métadonnées natives et tout nouveau responsable SEO/suivi avant de remettre la boutique en fonctionnement normal. Conservez les données de redirection exportées si d'anciens liens entrants nécessitent encore une destination.
Compatibilité
Nécessite PrestaShop 1.6.0.0 ou ultérieur et PHP 7.1 ou ultérieur.
Questions
2
En quoi la Smart SEO Revolution Suite diffère-t-elle des modules SEO séparés ?
SEO Revolution regroupe ces outils dans un tableau de bord du back-office :
- Modèles de métadonnées pour les types de pages pris en charge.
- Sitemaps, robots.txt et URL canoniques.
- Données structurées, balises sociales et hreflang.
- Redirections et surveillance des 404.
- SEO des images, maillage interne et score SEO.
Si plusieurs modules couvrent les mêmes fonctions, désignez un seul composant responsable de chaque sortie.
Puis-je utiliser votre SEO Revolution Suite au lieu d’acheter des modules SEO individuels ?
Oui, si ses fonctions répondent à vos besoins. Smart SEO Revolution Suite réunit des outils de sitemap, données structurées, URL canoniques et maillage interne dans un module. Comparez les fonctions nécessaires et les réglages de reprise avant de supprimer des modules autonomes.
Problèmes connus
42
Sélecteurs d’entités démarrant avec des sélections involontaires
Attribution anonyme perdant les refus de consentement
Sitemap et liens linguistiques ignorant le noindex rendu
Publication du fichier robots incohérente après modification
Audits de liens internes dépassant leur durée ou manquant des cibles
URL de recherche redirigées ou avec instructions robots contradictoires
Écrans de conversions et d’inventaire des pages en échec sur PrestaShop 9
Rapports d’achat comptant deux fois la même commande
Exemples de code perturbant les données structurées
Informations de clic publicitaire perdues lors des redirections
Page de contact omise du sitemap sans avertissement
Renforcement de la sécurité
Liens internes valides marqués inactifs
Publication du sitemap exposant un ensemble incomplet
Réglages SEO prioritaires sans effet immédiat
Pages d’erreur pouvant être marquées indexables
Signaux d’indexation incohérents entre les sorties de page
Liens imbriqués de photos produit impossibles à ouvrir
Balisage d’offre produit fournissant des données inexactes
Requêtes du module en arrière-plan redirigées
Génération de sitemap abandonnée malgré sa progression
Envois d’indexation utilisant des adresses non sécurisées incorrectes
Tableau de bord SEO en échec sur PrestaShop 9
Échec d’installation initiale du module
Génération de sitemap bloquée ou remplaçant les fichiers trop tôt
Liens internes imbriqués
Notes produit incluant des avis sans rapport
Pages noindex publiant encore des variantes linguistiques
Balisage pour moteurs de recherche avec données d’avis invalides
Liens canoniques des pages du module perdant leur destination
Visites de pages introuvables non enregistrées sur PrestaShop 9
Files d’envoi des achats et publicités peu fiables
Échecs d’analyse bloquant la commande
Sitemaps omettant les variantes linguistiques de l’accueil
Anciens paramètres et liens de sitemap mal migrés
Groupes de liens internes ne résolvant pas les cibles sélectionnées
Moteurs de recherche incapables de lire le noindex du module
Pages de catégorie dans des boucles de redirection
Pages de boutique en échec pendant la préparation du suivi
Erreurs de données structurées laissant une page blanche
Le schéma de rich snippet affiche un prix erroné pour les produits avec des prix spécifiques
Le schéma JSON-LD Product renvoie le prix catalogue de base au lieu du prix remisé lorsque des règles de prix spécifiques s'appliquent. Google affiche le mauvais prix dans les résultats de recherche.
Note de résolution
Utilise désormais Product::getPriceStatic() avec les réductions appliquées.
Boucle de redirection 301 lorsque les URL source et cible ne diffèrent que par le slash final
Créer une redirection de /old-product vers /old-product/ provoque une boucle de redirection infinie, car le module les traite comme des URL différentes alors que le serveur web les normalise.
Note de résolution
Ajout d'une normalisation du slash final avant la correspondance des redirections.
Demandes de fonctionnalités
39
Implémenté
Matrice centralisée de personnalisation des règles SEO
Import des conversions hors ligne dans Google Ads
Adresses lisibles de la boutique
Gestion des URL canoniques
Liens vers les versions linguistiques
Données structurées des produits et contenus
Métadonnées de partage social
Sitemaps XML par langue
Maillage interne et audit des liens
Nettoyage des chaînes de redirections
Rapports Search Console
Rapports GA4 dans le tableau de bord
Inventaire centralisé des pages
Gestion centralisée des règles SEO
Rapports de récupération SEO
Audit SEO des catégories
File d'indexation persistante
Priorités d'indexation configurables
Vérifications planifiées des backlinks
Données structurées des services
Sous-titres des produits
Liens vers les photos des galeries produits
Balisage étendu des galeries produits
Balisage Google sur votre propre domaine
Configuration de Google Tag Gateway
Import d'audiences publicitaires
Journal d'envoi des conversions
Liens internes localisés
Options d'envoi des conversions Google Ads
Périodes d'indexation planifiées
Gestion du texte alternatif des images
Import CSV des redirections
Redirections du cycle de vie des contenus
Suivi e-commerce de détail
Inclusion des pages de modules dans les sitemaps
Périmètre d'indexation des produits et accueils
Mises à jour depuis le back-office
Administration multilingue
Génération de métadonnées et de textes d'images
Journal des modifications
v2.3.552026-05-27
- AddedAdd internal link audit
- AddedFinalize SEO technical controller cleanup
- AddedAdd enhanced Ads conversion identifiers
- AddedAdd Google Ads offline conversion upload
- AddedFull-page internal linking via hookActionOutputHTMLBefore
- Addedcomplete FR/DE/ES/IT/PL translations
- ImprovedReplace GA4 SDK client
- ImprovedDelay listing page google tracking
- ImprovedCache SEO header output
- FixedEscape 404 monitor tilde probe pattern
- FixedExpose noindex on listing query variants
- FixedIgnore post form actions in link audit
- FixedComplete seo revolution release surface
Versions précédentes
v1.0.02026-05-04
- Initialrelease: complete SEO suite for PrestaShop
- InitialMeta template engine, hreflang tags, XML sitemaps, 301/302 redirect manager
- InitialCompatible with PS 1.7.x and PS 8.x
v2.1.02026-04-20
- AddedUse shop name slug instead of numeric ID in sitemap filenames
- AddedAdd softwareHelp schema linking product to documentation page
- AddedSplit sitemaps by language — one XML file per shop+language
- AddedUse PreviewBadge for source/target columns
- AddedLicense management tab with key management and renewal options
- Addedself-healing integrity checks for automatic diagnostics and repair
- Addedcomplete FR/DE/ES/IT/PL translations
- ImprovedUse DashboardChartWidget from prestashop-admin package
- ImprovedMatch exact dashtrends DOM structure for visitor widget
- Improvedadmin list columns with visual badge indicators and multiselect filters
- FixedMove sitemap output from module dir to /sitemaps/ in web root
- FixedGenerate friendly URLs for search SEO pages in sitemap
- FixedRespect controller-provided canonical in fixModuleControllerCanonical
- Fixedvarious stability and compatibility improvements (24 fixes total)
- Fixedadmin list filters — sorting, searching, and filtering now work correctly on all columns
v2.0.02026-01-27
- AddedPS 9 / Hummingbird theme compatibility
- AddedAI-assisted meta-description generation using configurable prompt templates
- Addedvisual redirect manager with import/export CSV support
- Improvedhreflang generation: supports x-default tag and region variants
- Optimized XML sitemap generation — streaming output for catalogues with 500k+ URLs
- Fixedcanonical URL conflict with native PS canonical on PS 8.1+
v1.2.02025-08-19
- Addednoindex/nofollow per-page override panel
- AddedSchema.org meta-template engine for product and category pages
- Improvedmeta-title and description template tokens: {name}, {category}, {brand}, {price}
v1.1.02025-05-26
- Addedbulk meta-title and description editor with live preview
- Addedrobots.txt editor with syntax validation
- Fixedhreflang tags duplicating on multistore with shared domain
Demo
Testez le module complet avant d'acheter
Achetez la licence plus tard et gardez vos réglages.
- Votre démo de 30 jours Testez-le sur votre propre boutique pendant 30 jours à partir de la première installation.
- Boutique de démo prête Découvrez une boutique de démo prête dans votre navigateur.
- Sans inscription Ni compte, ni e-mail, ni domaine de boutique requis.
En téléchargeant, vous acceptez les conditions de la démo et la politique de confidentialité.
En ouvrant cette démo, vous acceptez les conditions de la démo et la politique de confidentialité.