You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否用多个JSON-LD Schema.org标签表示同一页面对象?

如何关联独立JSON-LD脚本中的WebPage与FAQPage标签

可以通过**@id**属性实现两个独立JSON-LD脚本的关联,让解析器识别它们描述的是同一个页面实体,具体实现方式如下:

核心原理

利用Schema.org的实体标识机制:为两个脚本中的页面实体指定完全相同的**@id**值,解析器会自动合并这两个脚本的属性,同时FAQPage作为WebPage的子类,会继承WebPage的所有属性。

代码示例

页脚生成的WebPage标签

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "WebPage",
  "@id": "https://your-domain.com/faq#page-entity",
  "name": "网站常见问题",
  "url": "https://your-domain.com/faq"
}
</script>

FAQ组件生成的FAQPage标签

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "@id": "https://your-domain.com/faq#page-entity",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "如何重置密码?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "登录页面点击「忘记密码」,按提示输入注册邮箱即可获取重置链接。"
      }
    },
    {
      "@type": "Question",
      "name": "订单多久能发货?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "工作日下单后48小时内发货,周末及节假日顺延至工作日处理。"
      }
    }
  ]
}
</script>

关键注意事项

  • @id必须全局唯一:建议使用页面完整URL加上唯一片段标识符(如示例中的#page-entity),避免与网站内其他实体冲突。
  • 保持@context一致:两个脚本都要指定"@context": "https://schema.org",确保解析器能正确识别Schema类型。
  • 属性自动合并:解析器会将两个脚本中的属性合并,FAQPage的类型会覆盖WebPage的类型(因为FAQPage是更具体的子类),同时保留所有WebPage的属性。

内容的提问来源于stack exchange,提问作者ChristopherBass

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 22:21:36