J'ai un site Web sur lequel le client demande des balises schema.org JSON-LD (pas de microdonnées). L'une des choses qu'ils souhaitent est une balise de base « WebPage » sur chaque page qui contient des informations sur le contenu de chaque page. L'autre est « FAQPage », qui est ajoutée uniquement sur des pages FAQ spécifiques. Les deux seront ajoutés directement à la page en tant que balises de script en ligne.
FAQPage hérite de WebPage, elle contient donc toutes les propriétés de WebPage.
Si je demandais simplement au code de pied de page de générer la balise "WebPage" et au composant FAQ de générer la balise "FAQPage", les deux finiraient sur la page en tant que balises de script JSON-LD distinctes - qui, je crois, seraient interprétées comme deux autonomes. "page Web" - ce n'est pas ce que nous recherchons. p>
Est-il possible de marquer les balises de schéma de manière à ce que deux balises JSON-LD représentent des « extensions » l'une de l'autre ? Étant donné que FAQPage hérite de WebPage, j'aimerais trouver un moyen de définir un identifiant pour montrer que les deux sont la même page enregistrée.
(Oui, je pourrais utiliser la logique du backend pour "transmettre" des informations sur la FAQPage dans le pied de page et faire en sorte que le composant de pied de page affiche dynamiquement la FAQPage ou la page Web, mais ce n'est pas ce que je recherche ici.) p>
@id
mot-clé peut être utilisé pour cela. Il fournit un identifiant sous la forme d'un IRI (ou d'un identifiant de nœud vide) pour l'objet nœud.Les objets nœuds
@id
avec la même valeur sont la même chose, que les types de ces choses aient ou non une relation d'héritage.Ces IRI n'ont pas besoin d'être analysés dans des documents sur le Web. Si c'est le cas, vous devez vous assurer de faire la distinction entre une chose et la documentation la concernant.
Cependant, dans votre cas spécifique, la chose et la documentation à ce sujet signifient en réalité la même chose. Vous pouvez donc utiliser l'IRI canonique de la page comme
@id
:Si les objets représentent la même chose, mais ont des valeurs
, mais il a une signification différente. ) 🎜@id
值,您可以使用属性owl:sameAs
。但只支持 Schema.org 的消费者不会认识到这一点。 (Schema.org 也有一个sameAs
différentes, vous pouvez utiliser l'attributowl:sameAs
. Mais les consommateurs qui soutiennent uniquement Schema.org ne s’en rendront pas compte. (Schema.org a également un attributsameAs