我想为网站启用 Google Sitelinks Search Box 。关键是它的自定义搜索页面是由哈希片段实现的,所以JSON-LD数据片段是这样的:
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "WebSite",
"name" : "my site",
"alternateName" : "example.com",
"url": "http://www.example.com/",
"potentialAction": {
"@type": "SearchAction",
"target": "http://www.example.com/Search/#!/Keyword-{search_term_string}",
"query-input": "required name=search_term_string"
}
}
</script>
当Google尝试从此部分"required name=search_term_string"
中提取信息以显示附加链接搜索框时,遇到问题:
: http://schema.org/True
valueName: missing and required
我怀疑Google可能只是希望查询字符串中的搜索字符串而非哈希片段,除了重定向外,您还建议使用什么?
答案 0 :(得分:5)
感谢@unor我找到了解决方案,所以最终代码是这样的:
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "WebSite",
"name" : "example",
"alternateName" : "example.com",
"url": "http://www.example.com/",
"potentialAction": {
"@type": "SearchAction",
"target": "http://www.example.com/Search/#!/Keyword-{search_term_string}/",
"query-input": {
"@type": "PropertyValueSpecification",
"valueRequired": true,
"valueMaxlength": 100,
"valueName": "search_term_string"
}
}
}
</script>