【问题标题】:How to create SiteNavigationElement using JSON-LD?如何使用 JSON-LD 创建 SiteNavigationElement?
【发布时间】:2016-10-15 06:56:09
【问题描述】:

我正在尝试使用来自 Schema.org 的 SiteNavigationElement 类型。 HTML 是动态生成的,所以我无法编辑它。所以 JSON-LD 是我唯一的选择。

我想要一个 SiteNavigationElement 对象下的所有导航元素。

我已将所需的输出附加为屏幕截图:

【问题讨论】:

标签: navigation schema.org json-ld


【解决方案1】:

Schema.org 的SiteNavigationElement type 不能用于导航链接,只能用于整个导航。

因此,url 将是导航的 URL(通常没有),name 将是导航的名称(例如,“导航”或“主菜单”等) .

SiteNavigationElement 类型(以及父WebPageElement 类型及其其他子类型)对于典型的网页并不是真正有用。

【讨论】:

  • 感谢您的回复。根据要求,我必须创建这个结构,这可以通过编辑静态 html 来实现,但在我的情况下我不能。这些链接是页脚链接。 'Header' 表示页脚列标题名称和名称,URL 表示它们各自的子项。
  • 您是否理解我的回答,即您对SiteNavigationElement 的预期用途不正确,但您还是想这样做? -- 如果是这种情况,您需要在问题中提供更多详细信息,具体问题出在哪里。但请注意,消费者(如 Google)很可能无法正确理解您的数据。
  • 我明白你的意思。假设我在同一页面上有四个专业服务,并且必须使用 json-ld 形成模式。我已经创建并由谷歌验证。问题是我需要以@professionalDescripton -> 名称、描述对形式的单个专业服务对象内的所有服务。但我得到了不同的专业服务对象。 jpst.it/JKZF json 代码,可以在这里查看。 search.google.com/structured-data/testing-tool
  • @krishnaisdinesh:我不确定我是否完全理解您想要实现的目标。如果您有四个专业服务,您必须使用四个不同的ProfessionalService 对象。使用 JSON-LD 的 @graph,您可以在同一个 script 元素 (example) 中提供这 4 个对象,如果这是您想要的。 (顺便提一下,ProfessionalService 已被弃用。)
【解决方案2】:

这是怎么做的:

<script type="application/ld+json">
  {
  "@context": "https://schema.org",
  "@graph":
    [
      {
        "@context": "https://schema.org",
        "@type":"SiteNavigationElement",
        "@id":"#table-of-contents",
        "name": "Section 1",
        "url": "https://www.example.com/page#toc-1"
      },
      {
        "@context": "https://schema.org",
        "@type":"SiteNavigationElement",
        "@id":"#table-of-contents",
        "name": "Section 2",
        "url": "https://www.example.com/page#toc-2"
      },
      {
        "@context": "https://schema.org",
        "@type":"SiteNavigationElement",
        "@id":"#table-of-contents",
        "name": "Section 3",
        "url": "https://www.example.com/page#toc-3"
      },
      {
        "@context": "https://schema.org",
        "@type":"SiteNavigationElement",
        "@id":"#pagination",
        "name": "Previous page",
        "url": "https://www.example.com/page1"
      },
      {
        "@context": "https://schema.org",
        "@type":"SiteNavigationElement",
        "@id":"#pagination",
        "name": "Next page",
        "url": "https://www.example.com/page2"
      }
    ]
  }
</script>

此代码将像 this example 中所示一样出现。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-26
    • 1970-01-01
    • 2016-08-20
    • 1970-01-01
    • 1970-01-01
    • 2017-09-25
    • 2015-10-22
    • 2012-02-10
    相关资源
    最近更新 更多