Maillage interne SEO automatique : installation et aide

Démarrage rapide

  1. Installez le ZIP dans Modules > "Module Manager" et ouvrez "Improve" > Outil de maillage interne SEO.
  2. Vérifiez Liens maximum par page et Liens maximum par groupe dans Paramètres > Paramètres.
  3. Ajoutez un Groupe de liens avec Nom, Entité cible ou URL cible, et Mots-clés.
  4. Choisissez des Zones de contenu et Types de pages restreints, définissez Liens max. de ce groupe et laissez Actif sur Oui.
  5. Enregistrez et ouvrez une page contenant une expression correspondante dans la zone de contenu sélectionnée.
  6. Inspectez l'ancre générée et vérifiez sa destination, sa langue, ses attributs et le nombre de liens.

Nécessite PrestaShop 1.6.1 ou ultérieur et PHP 7.1 ou ultérieur.

Manuel de configuration

Installer et ouvrir la configuration

Téléversez le ZIP dans Modules > "Module Manager" > "Upload a module". Installez-le et cliquez sur "Configure". Ouvrez "Improve" > Outil de maillage interne SEO pour accéder à Tableau de bord, Groupes de liens et Paramètres > Paramètres. "Configure" ouvre l'écran de configuration.

Le traitement de la page finale utilise actionOutputHTMLBefore à partir de PrestaShop 1.7.1, et displayHeader avec un filtre de sortie Smarty sur les versions antérieures prises en charge. Il ignore les réponses AJAX et non HTML. Le moteur de page finale nécessite une section body. Vérifiez le résultat avec votre cœur PrestaShop et votre thème.

Configurer Paramètres généraux

Paramètre Valeur par défaut Configuration
Liens maximum par page 5 Limitez les liens générés sur une page. Les liens existants ne consomment pas ce quota de liens générés.
Liens maximum par groupe 3 Valeur de repli lorsqu'un groupe n'a pas sa propre limite positive.
Cible de lien par défaut _self Choisissez la cible par défaut. Utilisez _blank si les liens doivent ouvrir une autre fenêtre ou un autre onglet.
Attribut rel de lien par défaut Vide Valeurs facultatives telles que nofollow ou noopener.
Classe CSS de lien par défaut mpr-autolink Classe utilisée sauf si un groupe fournit la sienne.
Activer le profilage de débogage Non Ajoutez des diagnostics dans les commentaires HTML pour le dépannage.
Adresses IP de débogage Vide IP des visiteurs autorisés à voir les diagnostics, séparées par des virgules. Un champ vide ne restreint pas le débogage par IP.

Utilisez de petites limites positives pour votre première règle. Enregistrez et inspectez la sortie avant de les augmenter.

Configurer Règles

Paramètre Valeur par défaut Comportement actuel
Empêcher les href en double Oui Modifier ce réglage n’a aucun effet. Les liens existants vers une destination comptent toujours dans la limite positive du groupe.
Empêcher le lien dans un parent déjà lié Non Modifier ce réglage n’a aucun effet. Le texte déjà dans un lien est ignoré, mais le reste du texte dans le même élément englobant peut recevoir des liens.
Empêcher plusieurs liens automatiques dans le même élément Oui Limite les liens dans chaque segment de texte continu. Les éléments imbriqués et les groupes suivants peuvent ajouter d’autres liens dans le même élément englobant.
Distribution proportionnelle de la limite globale Oui Répartissez les limites effectives des groupes lorsque leur total dépasse la limite positive de la page.
Distribution uniforme des liens dans le texte Oui Modifier ce réglage n’a aucun effet. Les liens suivent l’ordre des zones de contenu, groupes, mots-clés et correspondances dans le texte.

Configurer Affichage et Exclusions

Dans Affichage, définissez ces valeurs de repli. Les zones de contenu sélectionnées d'un groupe sont prioritaires sur ses sélecteurs avancés, eux-mêmes prioritaires sur les sélecteurs globaux.

Paramètre Valeur par défaut Utilisation
Sélecteurs CSS inclus .product-description, #description, .page-content, .post-content Zones pouvant être traitées lorsqu'un groupe ne fournit pas de périmètre plus restreint.
Balises HTML incluses p,div,span,blockquote,li,td Balises parentes immédiates du texte autorisant l'insertion. Un groupe peut remplacer cette liste.

La correspondance avancée prend en charge les sélecteurs simples : .class, #id, tag, tag.class et tag#id. Ne supposez pas que toute la syntaxe des sélecteurs CSS d'un navigateur est disponible. Les zones intégrées peuvent inclure des motifs de thème prédéfinis supplémentaires.

Dans Exclusions, vérifiez :

Paramètre Valeur par défaut Utilisation
Ignorer l'URL de la page actuelle Oui Ignorez un groupe dont le chemin cible correspond à la page actuelle.
Exclure les titres Oui Ignorez le texte dont le parent immédiat est un titre. Vérifiez séparément le balisage personnalisé des titres imbriqués.
Exclure le texte en gras Non Ignorez le texte dont le parent immédiat est strong ou b.
"Excluded pages" Vide Sélectionnez les pages CMS qui ne doivent pas être traitées.

Les sélections de pages CMS exclues sont stockées sous une forme telle que {"cms":[3,4,6]}. Utilisez le formulaire plutôt que de modifier directement le stockage.

Importer et exporter en CSV

Utilisez "Import CSV" ou Exporter CSV dans Groupes de liens. L'import crée de nouveaux enregistrements. Il ne met pas à jour les groupes existants par nom ; réimporter un export peut donc créer des doublons. Choisissez le contexte boutique souhaité avant l'import.

Colonnes obligatoires :

name,target_url,keywords

Colonnes complètes de l'export :

name,target_url,keywords,link_position,max_links,ignore_case,add_strong,link_target,link_rel,link_class,content_zones,page_types,entity_type,entity_id,position,active

Exemple :

Shower trays,/12-shower-trays,"shower tray, shower trays, shower*",first,1,1,0,_self,,mpr-autolink,"[""product_description""]","[""product""]",category,12,10,1

Utilisez l'extension .csv en minuscules et des virgules comme séparateurs. Vérifiez le nombre d'éléments importés et ignorés. Ce format d'export n'inclut pas les remplacements traduits des mots-clés/URL ni tous les champs avancés ; conservez donc une sauvegarde de la base de données si vous avez besoin d'une restauration complète.

Dépanner et désinstaller

Si des liens manquent, vérifiez Actif, la langue actuelle, la résolution de la cible, le type de page, les sélecteurs de zone, les balises parentes autorisées et les deux limites. Vérifiez si la cible est l'URL actuelle ou si elle est déjà liée suffisamment de fois. Un mot-clé réparti sur plusieurs éléments HTML peut ne correspondre à aucun segment de texte.

Activez Activer le profilage de débogage et saisissez votre IP dans Adresses IP de débogage. Inspectez le code source de la page près de la balise body fermante pour trouver "MPR Internal Linking Debug v2.0", le type de page, le nombre de liens existants, le nombre de liens générés et les correspondances des groupes. Les réponses de débogage sont marquées private et no-store. Désactivez le débogage une fois terminé.

Utilisez Paramètres > Intégrité pour les contrôles d'infrastructure. Actualisez les caches de page concernés après les modifications.

Désactivez les groupes ou le module pour arrêter temporairement l'insertion. La désinstallation supprime son menu d'administration, ses paramètres, préférences et le stockage des groupes de liens. Exportez ou sauvegardez les groupes au préalable. Vos textes enregistrés du catalogue et du CMS restent inchangés.

Questions

2

Les liens automatiques vont-ils toucher ma navigation, mon fil d'Ariane ou mes données structurées JSON-LD ?

Le traitement de la page complète par Automatic Internal SEO Linker agit dans les zones de contenu configurées du <body>. Le <head> est exclu. Les balises parentes de texte autorisées par défaut sont p,div,span,blockquote,li,td ; <script> n’en fait pas partie.

La navigation et le fil d’Ariane restent hors traitement si vos zones ou sélecteurs les excluent. Choisissez des zones restreintes et inspectez le résultat final, y compris les données JSON-LD qui y sont intégrées. Le balisage personnalisé ne bénéficie pas d’une protection générale.

L’insertion automatique de liens nécessite-t-elle un outil de suivi des visiteurs ?

La correspondance des mots-clés de Automatic Internal SEO Linker ne nécessite ni script de suivi des visiteurs ni cookie de consentement.

Le module lit vos groupes de liens configurés et traite le HTML de la boutique sur le serveur avant de renvoyer la réponse.

Problèmes connus

12

Les pages de listes exclues recevaient toujours des liens

RésoluMis à jour :
Corrigé dans : 3.0.18
Les exclusions de catégories, marques et fournisseurs pouvaient être ignorées lorsque ces pages utilisaient une intégration partagée compatible des listes.

Les exclusions CMS n'étaient pas enregistrées de façon cohérente

RésoluMis à jour :
Corrigé dans : 3.0.18
Enregistrer et Enregistrer et rester pouvaient traiter les exclusions CMS différemment, laissant des exclusions non enregistrées.

Les imports CSV utilisaient le mauvais contexte de boutique

RésoluMis à jour :
Corrigé dans : 3.0.18
Les groupes de liens importés ne suivaient pas systématiquement la boutique sélectionnée.

Liens internes absents sur les anciennes versions de PrestaShop

RésoluMis à jour :
Corrigé dans : 3.0.18
La création automatique de liens pouvait échouer sur les pages de PrestaShop 1.6 et des premières versions de PrestaShop 1.7.

Libellés d’administration restés en anglais

RésoluMis à jour :
Corrigé dans : 3.0.18
Certains libellés d'administration du module n'utilisaient pas les traductions disponibles.

Libellés traduits altérés

RésoluMis à jour :
Corrigé dans : 3.0.11
Les textes traduits pouvaient afficher des barres obliques inverses répétées ou des caractères mal échappés.

Un ciblage inchangé sélectionnait tout

RésoluMis à jour :
Corrigé dans : 3.0.12
L'enregistrement d'une nouvelle entrée sans modifier son sélecteur d'entités pouvait l'appliquer à toutes les entités.

Icônes manquantes avec les ressources regroupées

RésoluMis à jour :
Corrigé dans : 3.0.10
Les icônes du module pouvaient ne pas s'afficher lorsque PrestaShop regroupait les ressources d'administration.

Les pages traduites pointaient vers des segments d'URL mal localisés

RésoluMis à jour :
Corrigé dans : 3.0.9
Les liens basés sur des entités dans les pages traduites pouvaient utiliser des segments d'URL anglais avec un préfixe de langue au lieu de la destination finale localisée.

Des liens automatiques étaient insérés dans des liens existants

RésoluMis à jour :
Corrigé dans : 3.0.8
La liaison par mots-clés pouvait créer des liens imbriqués dans du texte déjà lié.

Les liens hors contenu consommaient la limite de la page

RésoluMis à jour :
Corrigé dans : 3.0.8
Des liens ailleurs sur la page pouvaient compter dans la limite du contenu sélectionné, empêchant les liens de mots-clés prévus.

Liens incorrects autour des fragments HTML

RésoluMis à jour :
Corrigé dans : 3.0.8
Certains fragments HTML et éléments autofermants pouvaient perturber la détection du contenu et l'insertion de liens.

Demandes de fonctionnalités

5

Implémenté

Exclusion de pages CMS du maillage automatique

Implémenté
Les pages CMS sélectionnées sont exclues de l’insertion automatique de liens. La sélection se fait à l’aide des cases d’exclusion dans la configuration du module.

Liens automatiques sur les mots-clés

Implémenté
Associez des mots-clés à des destinations et insérez des liens dans les descriptions produit et le contenu CMS, avec des limites par page, des réglages nofollow et l'import-export des listes de mots-clés.

Exclusion de pages

Implémenté
Choisissez les types de pages à exclure du maillage interne automatique.

Vérification et réparation de l'installation

Implémenté
Vérifiez les prérequis d'installation et réparez l'infrastructure manquante du module depuis le back-office.

Mises à jour du module en un clic

Implémenté
Recherchez et installez les mises à jour du module depuis le back-office.

Journal des modifications

v3.0.92026-08-30

  • AddedAdmin UI for excluded pages — checkbox grid in Exclusions tab
  • Addedcomplete FR/DE/ES/IT/PL translations
  • ImprovedSync fragment-aware internal linking engine
  • ImprovedV3.0.0 — 19x faster link injection engine + shared package + page exclusion
  • ImprovedPre-scan CSS selectors to eliminate redundant regex scans
  • FixedResolve localized internal link targets
  • FixedSync entity selector package
  • FixedVendor prestashop-admin as module files
  • FixedExisting-link counting scoped to content regions (package update)
Versions précédentes

v2.1.02026-04-20

  • Addedself-healing integrity checks for automatic diagnostics and repair
  • Addedadmin menu management via MenuInstaller for streamlined module setup
  • AddedLicense management tab with key management and renewal options
  • Addedcomplete FR/DE/ES/IT/PL translations
  • Improvedsettings form organization with tabbed layout
  • FixedPrevent autolinking inside existing anchor tags
  • Fixedadmin list filters — sorting, searching, and filtering now work correctly on all columns

v1.2.02025-09-10

  • Addedlink group management: bundle related keyword-URL pairs and enable/disable as a set
  • Improvedcase-insensitive matching with configurable per-rule override
  • Fixedlinks being injected inside existing <a> tags causing nested anchor violations
  • Addedmax-links-per-page limit with configurable threshold

v2.0.02025-08-01

  • Addedfull compatibility with PrestaShop 9.x and Hummingbird theme
  • Complete architecture rewrite: link rules now stored as a versioned JSON document for faster import/export
  • AddedCSS selector targeting: apply linking rules only within specified content containers
  • Improvedregex-based keyword matching with optional word boundary enforcement
  • Addedper-link attribution — track click-throughs via a lightweight redirect proxy
  • Fixedmemory exhaustion on pages with very long product descriptions containing repeated keywords

v1.1.02025-05-15

  • Addedbulk import/export of keyword-URL rules via CSV
  • Improvedexclusion list: skip linking on CMS pages, specific categories, or product IDs
  • Fixedduplicate link injection when the same keyword appeared in page title and body
  • Addednofollow/noopener attribute toggle per rule

v1.0.02025-01-17

  • Initialrelease: automatic keyword-to-URL linking for product descriptions and CMS content
  • InitialAdmin rule builder with keyword, target URL, and match-count-per-page settings
  • InitialProcessed server-side using DOMDocument — no JavaScript dependency
  • InitialMulti-language support for keyword sets and target URLs

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.
Lancer la boutique de démo

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é.

Chargement...
Retour en haut