Google SDTT中的错误:" valueName字段的值是必需的"

时间:2017-05-28 12:22:56

标签: schema.org json-ld google-rich-snippets

我正在为我的网站实施Schema.org + JSON-LD,并尝试在网站的所有页面中添加以下内容:

<script type="application/ld+json">
{
    "@context": "http://schema.org",
    "@type": "WebSite",
    "url": "http://example.com/",
    "potentialAction": {
      "@type": "SearchAction",
      "target": "http://example.com/search?&q={query}",
      "query-input": "required",
      "valueName":""
    }
}
</script>

我尝试为valueName提供多个值,但Google结构化数据测试工具仍然将此报告为错误。

Google SDTT output shows error 'A value for the valueName field is required'

valueName的有效值是什么?

1 个答案:

答案 0 :(得分:3)

您可以为query-input提供字符串值,在这种情况下,您必须指定代表占位符的target值部分(&#34;查询&#34;在您的情况下) ),前缀为&#34;必需名称=&#34; (没有空格字符):

"target": "http://example.com/search?&q={query}",
"query-input": "required name=query",

或者您可以为PropertyValueSpecification提供query-input项值,在这种情况下,您可以明确使用valueNamevalueRequired

"target": "http://example.com/search?&q={query}",
"query-input": {
  "@type": "PropertyValueSpecification",
  "valueName": "query",
  "valueRequired": true
}

Sitelinks Searchbox中,Google仅记录第一种方式。第二种方式是他们testing tool在使用第一种方式时解析的内容。