Données structurées Schema.org : comment les intégrer sur WordPress ?
Le 21 septembre 2026
On vous a recommandé de déployer les données structurées Schema.org sur votre site vitrine WordPress pour améliorer votre GEO ?
On vous a probablement bien conseillé ! Mais alors comment réussir à les intégrer sur votre site quand vous n’êtes pas un développeur ?
C’est ce que nous allons tenté de voir dans cet article.
A retenir sur le balisage sémantique schema.org
- Le format JSON-LD est le meilleur format à retenir pour le déploiement des données structurées (celui recomandé par Google)
- Les 4 schémas les plus importants pour un site sur une activité classique : Organization (site), Person (auteurs), Article (blog), Product/Offer (e-commerce)
- Il ne faut utiliser qu’un pluggin par site pour sa mise en place pour éviter les doublons
- Il faut bien s’assurer que le schema.org soit bien validé avant de le déployer sur votre environnement de production
Qu’est-ce qu’une donnée structurée Schema.org ?
La donnée structurée est un vocabulaire universel (schema.org, lancé en 2011 par Google, Bing, Yahoo, Yandex) qui décrit ce qu’est une page dans un format lisible par les machines (notamment les robots des IA ou des moteurs de recherche).
Il s’agit pour les robots de trouver plus facilement l’informaition et surtout beaucoup plus rapidement (pour limiter les budgets de crawl) en utilisant un balisage sémantique utilisé par tous les sites au niveau international.
Schema.org, JSON-LD, microdonnées : quelle différence ?
Quelques mots de vocabulaires à définir avant de commencer :
Schema.org => c’est donc le référentiel qui définit toutes les propriétés, leur type et leur hiérarchie à utiliser sur votre site en fonction de votre activité
Le JSON-LD, les microdonnées ou le RDFa sont des syntaxes pour écrire ces propriétés => Il s’agit de 3 manières d’écrire le balisage dans la page HTML elle-même. Les microdonnées et le RDFa s’insèrent dans les balises HTML existantes sous forme d’attributs.
Alors que le JSON-LD est un bloc <script type="application/ld+json"> séparé du HTML, donc plus simple à générer et à maintenir. Voilà à quoi cela pourrait ressembler :
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Nom de votre entreprise",
"url": "https://www.votre-site.fr",
"logo": "https://www.votre-site.fr/images/logo.png",
"sameAs": [
"https://www.linkedin.com/company/votre-entreprise",
"https://www.facebook.com/votre-entreprise"
]
}
</script>
Ce que les données structurées apportent à Google
En SEO, ce n’est pas le criètre le plus important.
Pour Google, cela permet cependant de rendre éligible votre site aux résultats enrichis dans ses propositions lors d’une requête tapée par un utilisateur.
S’affichera alors : les étoiles des avis, le stock, le prix, le type de livraison, etc.
Exemple pour un site e-commerce :

L’objectif pour Google en réalité au delà de l’affichage qui permet une meilleure sélection pour l’utilisateur, c’est aussi un gain de temps dans le budget de Crawl. C’est à dire qu’il peut très rapidement lire et comprendre l’information qu’il aurait dû chercher beaucoup plus longtemps en lisant tout votre contenu pour les retrouver.
Ce que les données structurées apportent aux IA génératives
En GEO, pour les IA génératives, l’intérêt est le même que pour Google sur le budget de Crawl. Encore plus que pour Google d’ailleurs, car les robots d’IA font des requêtes web beaucoup plus régulièrement. Le budget à y consacrer est donc bien plus conséquent !
Cela permet aussi aux IA de vérifier des informations essentielles pour elles : la fiabilité des données. La propriété sameAs par exemple aide à relier la marque à un Linkedin ou un Wikidata et ainsi éviter les confusions avec les homonymes par exemple.
Les balisages spécifiques à certaines activités (animaux, tourisme, hébergement, restauration, santé, juridique et plein d’autres….) permettent aux IA d’identifier plus facilement vos singularités pour vous pousser en avant.
Quelles données structurées mettre en place sur un site WordPress ?
Vous avez la possibilité d’implémenter de nombreuses données strucutrées différentes. En voici quelques unes qui sont indispensables à mettre en place pour votre GEO / SEO :
Organization : la carte d’identité de la marque
Il s’agit de la carte d’identité de votre marque. Cette donnée doit apparaitre sur toutes les pages de votre site et doit être la plus détaillée possible afin que les robots puissent savoir très rapidement à qui ils ont affaire.
Les propriétés qui comptent
Voici les propriétés à faire apparaitre dans votre JSON-LD pour Organization : il s’agit d’un exemple fictif (les valeurs sont inventées) pour « Atelier Lumen » : agence de design d’intérieur à Nantes.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": ["Organization", "LocalBusiness"],
"@id": "https://www.atelier-lumen.example/#organization",
"name": "Atelier Lumen",
"alternateName": "Lumen Design",
"legalName": "Atelier Lumen SAS",
"url": "https://www.atelier-lumen.example/",
"logo": {
"@type": "ImageObject",
"@id": "https://www.atelier-lumen.example/#logo",
"url": "https://www.atelier-lumen.example/images/logo-atelier-lumen.png",
"contentUrl": "https://www.atelier-lumen.example/images/logo-atelier-lumen.png",
"width": 600,
"height": 200,
"caption": "Logo Atelier Lumen"
},
"image": { "@id": "https://www.atelier-lumen.example/#logo" },
"description": "Agence de design d'intérieur fondée en 2012 à Nantes, spécialisée dans l'aménagement de bureaux et de commerces.",
"slogan": "Des espaces qui font travailler mieux",
"foundingDate": "2012-03-15",
"foundingLocation": {
"@type": "Place",
"address": {
"@type": "PostalAddress",
"addressLocality": "Nantes",
"addressCountry": "FR"
}
},
"founder": [
{ "@id": "https://www.atelier-lumen.example/#jean-dupont" }
],
"employee": [
{ "@id": "https://www.atelier-lumen.example/#jean-dupont" },
{ "@id": "https://www.atelier-lumen.example/#marie-martin" }
],
"numberOfEmployees": {
"@type": "QuantitativeValue",
"value": 9
},
"address": {
"@type": "PostalAddress",
"streetAddress": "14 rue des Carmes",
"postalCode": "44000",
"addressLocality": "Nantes",
"addressRegion": "Pays de la Loire",
"addressCountry": "FR"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 47.2154,
"longitude": -1.5533
},
"hasMap": "https://maps.example/atelier-lumen",
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
"opens": "09:00",
"closes": "18:00"
}
],
"telephone": "+33240000000",
"email": "contact@atelier-lumen.example",
"contactPoint": [
{
"@type": "ContactPoint",
"contactType": "sales",
"telephone": "+33240000000",
"email": "contact@atelier-lumen.example",
"availableLanguage": ["fr", "en"],
"areaServed": "FR"
},
{
"@type": "ContactPoint",
"contactType": "customer support",
"email": "support@atelier-lumen.example",
"availableLanguage": ["fr"]
}
],
"priceRange": "€€€",
"currenciesAccepted": "EUR",
"paymentAccepted": "Virement, Carte bancaire",
"vatID": "FR00123456789",
"taxID": "123456789",
"iso6523Code": "0002:123456789",
"naics": "541410",
"areaServed": [
{ "@type": "Country", "name": "France" }
],
"knowsAbout": [
"Design d'intérieur",
"Aménagement de bureaux",
"Agencement de commerces",
"Space planning"
],
"knowsLanguage": ["fr", "en"],
"memberOf": [
{ "@type": "Organization", "name": "Conseil français des architectes d'intérieur" }
],
"award": "Prix du design tertiaire 2024",
"hasOfferCatalog": {
"@type": "OfferCatalog",
"name": "Prestations Atelier Lumen",
"itemListElement": [
{
"@type": "Offer",
"itemOffered": {
"@type": "Service",
"name": "Aménagement de bureaux",
"url": "https://www.atelier-lumen.example/amenagement-bureaux/"
}
},
{
"@type": "Offer",
"itemOffered": {
"@type": "Service",
"name": "Agencement de commerces",
"url": "https://www.atelier-lumen.example/agencement-commerces/"
}
}
]
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"bestRating": "5",
"ratingCount": "37"
},
"sameAs": [
"https://www.linkedin.com/company/atelier-lumen-example",
"https://www.instagram.com/atelierlumen.example",
"https://www.facebook.com/atelierlumen.example",
"https://www.wikidata.org/wiki/Q000000000",
"https://fr.wikipedia.org/wiki/Atelier_Lumen"
]
},
{
"@type": "Person",
"@id": "https://www.atelier-lumen.example/#jean-dupont",
"name": "Jean Dupont",
"givenName": "Jean",
"familyName": "Dupont",
"jobTitle": "Fondateur et directeur artistique",
"worksFor": { "@id": "https://www.atelier-lumen.example/#organization" },
"url": "https://www.atelier-lumen.example/equipe/jean-dupont/",
"image": "https://www.atelier-lumen.example/images/jean-dupont.jpg",
"knowsAbout": ["Design d'intérieur", "Architecture tertiaire"],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "École Boulle"
},
"sameAs": [
"https://www.linkedin.com/in/jean-dupont-example"
]
},
{
"@type": "Person",
"@id": "https://www.atelier-lumen.example/#marie-martin",
"name": "Marie Martin",
"givenName": "Marie",
"familyName": "Martin",
"jobTitle": "Cheffe de projet aménagement",
"worksFor": { "@id": "https://www.atelier-lumen.example/#organization" },
"url": "https://www.atelier-lumen.example/equipe/marie-martin/",
"sameAs": [
"https://www.linkedin.com/in/marie-martin-example"
]
},
{
"@type": "WebSite",
"@id": "https://www.atelier-lumen.example/#website",
"url": "https://www.atelier-lumen.example/",
"name": "Atelier Lumen",
"publisher": { "@id": "https://www.atelier-lumen.example/#organization" },
"inLanguage": "fr-FR"
}
]
}
</script>
Quelques précisions sur les attributs :
| Niveau | Propriétés | Justification |
| Indispensable | @id, name, legalName, url, logo (PNG/JPG, ≥ 112 px), description, address, telephone, email, sameAs | C’est ce que Google et les IA utilisent pour identifier l’entité sans ambiguïté |
| Recommandés | foundingDate, founder, numberOfEmployees, contactPoint, areaServed, knowsAbout, hasOfferCatalog, vatID / taxID / iso6523Code (SIREN), nœuds Person reliés par worksFor | Ils enrichissent le profil de la marque et soutiennent l’EEAT |
| Selon la situtation | LocalBusiness en second type + geo, openingHoursSpecification, priceRange, hasMap (uniquement si lieu physique ouvert aux clients) ; aggregateRating (uniquement si les avis sont réels et visibles sur la page) ; memberOf, award | Utiles quand ils sont vrais, pénalisants quand ils sont décoratifs |
Organization ou LocalBusiness : lequel choisir ?
LocalBusiness (ou sous-type : ProfessionalService, Store, Restaurant) si le lieu physique reçoit des clients et pour un pack local
Organization si l’activité est nationale. Un seul des deux, jamais les deux en parallèle avec des données contradictoires.
Person : l’auteur et l’EEAT
C’est une donnée importante à implémenter sur votre site. L’auteur (author) permet de crédibiliser la prise de parole de votre structure. Les robots ont besoin de pouvoir vérifier l’expérience et l’expertise de votre savoir-faire pour vous pousser en avant.
De fait, il est recommandé qu’au moins 1 persone de votre structure représente la prise de parole publique. Bien souvent, il s’agit de l’entrepreneur lui même (pour faire perdurer dans le temps) mais cela peut être n’importe qui de l’entreprise.
Les propriétés souvent utlisées : name, jobTitle, worksFor (lien vers l’Organization par @id), sameAs (LinkedIn), image, description. C’est la traduction technique de l’EEAT.
Product et Offer : prix, disponibilité, avis
Essentiels pour les pages de présentation de vos services ou bien pour les pages produit :
A prendre en compte (entre autre) : name, image, description, sku, brand, offers avec price, priceCurrency, availability (URL schema.org/InStock), url, addionalProperty. aggregateRating pour les avis visibles sur la page.
WooCommerce l’émet nativement. PrestaShop selon le thème.
Article et BlogPosting : dates, auteur, image
La base quand vous avez un blog évidemment pour tous vos articles :
Les propriétés maitresses : headline, datePublished, dateModified (celle-ci doit changer quand le contenu de l’article est modifié), author (référence au Person), publisher (référence à l’Organization), image.
Astuce : utiliser @id pour relier Article → Person → Organization dans un seul graphe plutôt que trois blocs isolés.
FAQPage, BreadcrumbList, WebSite : utiles ou décoratifs ?
- BreadcrumbList est utile sur quasiment tous les sites. Il s’agit de rendre dynamique le balisage du fil d’ariane de votre site.
- WebSite : avec potentialAction et SearchAction
- FAQPage : évidemment, le balisage de la FAQ, extrêmement important en GEO pour baliser les requêtes fan-out d’une page qui permettent de préciser la requête.
=> Evidemment, il existe de nombreuses autre données structurées et cela va surtout dépendre de votre activité. Mais, a minima, celles-ci doivent être implémentées.
Alors comment faire pour intégrer dans votre site WordPress ?
Comment intégrer les données structurées avec SEOPress sur WordPress ?
Vous avez probablement l’habitude d’utiliser YOAST SEO pour votre site, qui est un excellent module. Cependant, pour l’implémentation d’un schema.org personnalisé, il n’est malheureusement pas adapté.
Pour personnaliser comme vous le souhaitez votre schema.org, nous vous recommandons donc d’utiliser SEOPress dans WordPress. Pour cel, allez dans « Extensions » -> « Ajouter une extension » -> et recherchez le module « SEOpress ».
Pour un usage optimale, vous pouvez utilisez la version « Pro » soumis à licence.
Important : pour que tout fonctionne correctement, il est impératif de n’utiliser qu’un module. Soit vous conservez YOAST SEO, soit SEOPRESS mais les deux ne peuvent cohabiter en même temps.
Si vous passez sur SEOPress, alors, nous vous conseillons de l’installer en premier lieu sur votre environnement de préproduction pour affiner tous les réglages avant de passer en prod. Car certaines fonctionnalités vont être doublonnées, il faut donc s’assurer que ce ne soit plus le cas avant de faire la bascule.
L’interface Schema de SEOPress
Une fois l’extension installée, il vous faut cliquer dans le menu de gauche sur « Schemas » et la liste des schemas (qui sera vide pour une première utilisation) apparaitra.

Comment ajouter facilement un nouveau schema ?
Ajouter un schema déjà existant :
Cliquez alors en haut à droite sur « Ajouter un schéma ». Vous arrivez sur la liste des schemas déjà disponibles.

Vous choisissez le schema qui vous intéresse et il vous restera plus qu’à le configurer en suivant les paramétrages de chaque donnée souhaitée.
Cependant, il est fréquent que toutes les propriétés ne soient pas disponibles. Aussi, afin de réaliser une donnée Organization comme celle présentée ci-dessus, il vous faudra utiliser un schéma personnalisé.
Ajouter un schema personnalisé :
Cliquez alors sur « Schema vide » puis « Personnalisé » afin de pouvoir y intégrer un JSON-LD personnalisé. Donnez un « Nom » à votre schéma afin de le retrouver facilement dans la liste à venir.

En cliquant sur le « Filtre » vous pouvez choisir d’appliquer votre schema personnalisé à un type de page, un gabarit (avec la taxonomie) ou bien encore à une page en particulier grâce à son ID.

Une fois le type choisi, vous pouvez ajuster sa valeur et lui en ajouter d’autres :
- soit avec la fonction ET : utile notamment lorsque vous souhaitez exclure des pages. Vous ajoutez « ET » puis dans le type de publication vous choisissez « ID de la publication » puis « n’est pas égale à » puis la valeur.
- soit avec la fonction OU : si vous souhaitez que le schema s’applique à plusieurs types de pages
Il est alors temps d’intégrer le code de votre JSON-LD personnalisé et de valider votre schema :

Vérifiez bien que le JSON-LD ne comporte pas d’erreur. Au quel cas, le bandeau vert en bas de l’écran ci-dessus serait rouge, et le bouton « Créer le schema » serait en bleu pale.
Si tout est OK, vous pouvez cliquer sur « Créer le schema ».
Et voici votre premier schema personnalisé intégré !
Pourquoi un schéma personnalisé plutôt que le Knowledge Graph de SEOPress ?
Le Knowledge Graph (SEO > Réseaux sociaux) ne prend en compte que quelques propriétés et produit un « Organization » minimal.
Afin d’ajouter d’autres propriétés telles que legalName, founder, contactPoint, hasOfferCatalog, les nœuds Person et les @id, il faut donc un schéma « Personnalisé » où l’on colle son propre JSON-LD.
Désactiver le Knowledge Graph natif :
Attention : si vous optez pour cette option, il vous faut désactiver le Knowledge Graph natif de SEOPress. Sinon, vous allez émettre un second Organization à côté du vôtre. Pour ce faire :
Allez dans le mendu de Gauche WordPress, SEO (module SEOPress), puis « Réseaux sociaux », puis « Knowledge Graph » et sélectionnez « Aucun » devant le champ « Personne ou organisation » et enfin cliquez sur « Enregistrer » à gauche. Cela désactivera le schéma natif.
Créer les autres schémas personnalisés
Renouvelez les mêmes opérations pour créer les autres schemas souhaités : FAQPage, BreadcrumbList, WebSite , Author…
Assurez-vous à chaque fois que les schemas ne soient pas en double. Par exemple, WooCommerce émet Product et BreadcrumbList. Il faut alors désactiver l’un des deux.
Comment vérifier ses données structurées ?
Vous avez intégré vos différents schemas et vous souhaitez maintenant vérifier comment les robots d’IA ou de Google vont les prendre en compte ?
Test des résultats enrichis de Google et validateur Schema.org
Pour ce faire, utilisez le validateur Schema.org

Entrez l’url de votre page pour savoir comment apparait votre Schema. Le résultat obtenu permet de savoir si il y a des erreurs générées ou non.
Astuce importante si vous bossez avec un environnement de prépoduction, il vous sera normalement impossible de tester avec une url étant donné qu’il y aura un HTPassword. De fait, copier le code de votre page, sélectionnez « Etrait de code » et entrez alors le code votre page.
Google Search Console : le rapport Améliorations
Fil d’Ariane, FAQ, Produits… les erreurs remontent 3 à 10 jours après le recrawl.
Les erreurs vues en audit
Doublons de schémas
Déjà abordé plus haut, les doublons de schémas peuvent apparaitre sur certains sites. Vérifiez vos extensions et leurs fichiers natifs.
HTML et numérotation dans les champs name
Dans les FAQ par exemple, il arrive que des caractères HTML soient mal interprétés. Exemple de l’apostrophe qui en fonction de celle utilisée « droite » ou « américaine » va laisser apparaitre du code dans la propriété (souvent dans « name »).
Ou bien également des balises qui pourraient trainer comme des <H3 qui seraint dans les titres des questions de la FAQ.
Propriétés vides ou fausses
Ne laissez pas des propriétés vides ou erronnées. Il pourrait s’agir notamment de : un sameAs vide, le logo en SVG, price sans priceCurrency, availability en texte libre au lieu de l’URL schema.org, dateModified figée, etc.
Vérifiez bien tous ces éléments avant de passer en production.
Quelles sont les limites des données structurées ?
Ce n’est pas un facteur de ranking
Google l’a mainte fois répété : il ne s’agit pas d’un critère de classement. Le schema aide les robots à aller plus vide dans la compréhension de votre page, donc à mieux vous référencer a fortiori. Donc… ben c’est quand même un petit critère !
Difficile d’attribuer au balisage une importance pour les IA
De la même manière, pour les IA, il est difficile de rattacher une performance de citation à un balisage. Cependant, cela permet d’éliminer cette piste quand il est bien fait et cela sert dans tous les cas à votre visibilité dans les futurs protocoles. C’est donc une excellente pratique à mettre en place dès que possible.
FAQ sur les données structurées
Peut-on ajouter du JSON-LD à la main dans functions.php ?
Oui, via wp_head dans functions.php ou un snippet, à condition de désactiver l’équivalent du plugin. Bloc de 10 lignes en exemple.
Le schéma Organization doit-il être sur toutes les pages ?
Oui, c’est la fiche d’identité de l’éditeur. Il doit être le plus complet possible.
Combien de temps avant que Google prenne en compte un schéma ?
Au recrawl suivant, le rapport GSC suit sous quelques jours. L’affichage enrichi n’est jamais garanti.
Les données structurées servent-elles à ChatGPT ou Perplexity ?
Ils lisent le HTML donc le JSON-LD ; l’usage prouvé concerne Product/Offer (shopping) et l’identification d’entité. Il n’existe pas de documentation officielle sur le reste.
