Que fait astudio · Balisage Schema ?
<root> = deux niveaux au-dessus du répertoire de base de cette compétence. Lint : <root>/scripts/schema_lint.py. Statut des types :
<root>/reference/facts.md § Statut des résultats enrichis.
Les données structurées ne sont pas requises pour les réponses IA (Google le dit), mais elles énoncent les faits sans ambiguïté : qui vous êtes, combien coûte le produit, où vous êtes, qui a écrit l'article. Cela aide les résultats enrichis, les panneaux de connaissance et tout consommateur qui lit le JSON-LD. Cela n'aide que lorsque cela correspond à ce que la page affiche.
Flux de travail
- Inventorier les modèles de page (accueil, catégorie, produit, article, contacts, événements, offres d'emploi).
- Linter ce qui existe :
schema_lint.py <url>par modèle. - Choisir les types par modèle (tableau ci-dessous). Un
@graphpar page ; donnez aux entités des valeurs@idstables (https://site.ru/#organization) et référencez-les au lieu de les répéter. - Écrire le JSON-LD à partir de la même source de données que la page (champs CMS), jamais en copiant des nombres à la main.
- Valider :
schema_lint.py, puis Google Rich Results Test et Schema Markup Validator, et pour la Russie le validateur de microdonnées Yandex Webmaster. Collez les résultats dans le rapport. - Afficher le diff ; déployer après un accord.
Types par modèle
| Modèle | Types | Doit correspondre à la page |
|---|---|---|
| Accueil | Organization (ou sous-type LocalBusiness), WebSite | nom, logo, contacts ; sameAs vers les profils officiels (VK, Telegram, Яндекс Карты, 2ГИС, Wikipedia) |
| Produit | Product + Offer (+ AggregateRating, Review si affichés) | prix, devise RUB, disponibilité, valeur et nombre d'évaluations |
| Catégorie | BreadcrumbList, ItemList (facultatif) | texte du fil d'Ariane |
| Article / blog | Article/BlogPosting + Person (auteur) | titre, nom de l'auteur avec une page de profil, dates |
| Contacts / succursale | Sous-type LocalBusiness avec adresse, geo, openingHoursSpecification, telephone | les mêmes NAP que les cartes et les annuaires |
| Page vidéo | VideoObject | miniature, date de mise en ligne, durée |
| Événements / cours / offres d'emploi | Event, Course, JobPosting | dates, prix, lieu, salaire |
| Page de forum Q&A | QAPage | vraies questions et réponses des utilisateurs |
Types retirés ou sans effet (ne les vendez pas comme des gains)
FAQPage (aucun résultat enrichi Google depuis le 2026-05-07), HowTo (2023), ClaimReview, EstimatedSalary, Learning Video, SpecialAnnouncement, Vehicle Listing, Book Actions (2025-06-12). Conservez FAQPage/HowTo uniquement s'ils reflètent un contenu visible et que quelqu'un d'autre les consomme ; dites qu'il n'y a aucun effet SERP Google.
Règles
- Ne balisez que ce que les utilisateurs peuvent voir. Les évaluations cachées, les avis élogieux de votre propre organisation et les prix différents de ceux de la page violent la politique de Google et peuvent entraîner une action manuelle.
- Prix : nombre sans espaces dans
price("4990"),priceCurrency: "RUB"; affichez le même prix dans le HTML. - Dates au format ISO 8601 avec fuseau horaire (
2026-11-06T10:00:00+03:00). - Une seule entité organisation par site, référencée par
@id.
Exemple : LocalBusiness
{"@context":"https://schema.org","@graph":[{"@type":"CafeOrCoffeeShop","@id":"https://zerno.ru/#org",
"name":"Кофейня «Зерно»","url":"https://zerno.ru/","logo":"https://zerno.ru/logo.svg","telephone":"+7 843 000-00-00",
"address":{"@type":"PostalAddress","streetAddress":"ул. Баумана, 1","addressLocality":"Казань","postalCode":"420111","addressCountry":"RU"},
"geo":{"@type":"GeoCoordinates","latitude":55.7887,"longitude":49.1221},
"openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],"opens":"08:00","closes":"22:00"}],
"sameAs":["https://vk.com/zerno","https://yandex.ru/maps/org/000"]}]}