为定位多个内容的网站添加附加链接搜索架构

时间:2017-06-09 10:15:01

标签: search data-structures schema.org json-ld

我有3种类型的内容(type1,type2,type3)

我每个内容的当前搜索格式链接是:

http://example.com/search?q=search&type=type1
http://example.com/search?q=search&type=type2
http://example.com/search?q=search&type=type3

或者我可以改为:

http://example.com/search?type1=search
http://example.com/search?type2=search
http://example.com/search?type3=search

这个JSON-LD代码是真的吗?

"potentialAction": 
    [
      {
        "@type": "SearchAction",
        "target": "http://example/search?type1={search_term_string}",
        "query-input": "required name=search type 1"
      },
      {
        "@type": "SearchAction",
        "target": "http://example/search?type2={search_term_string}",
        "query-input": "required name=search type 2"
      },
      {
        "@type": "SearchAction",
        "target": "http://example/search?type3={search_term_string}",
        "query-input": "required name=search type 3"
      }
    ] 

1 个答案:

答案 0 :(得分:0)

query-inputtarget

query-input属性的值必须是required name=值中指定的占位符的名称(作为target的后缀)。

对于targethttp://example/search?type1={search_term_string},占位符(由{}表示):search_term_string

因此,您必须使用required name=search type 1而不是required name=search_term_string

多个SearchAction

从Schema.org的角度来看,可以提供potentialAction类型的多个SearchAction值。

但是对于Google的Sitelinks Searchbox,请注意their documentation says

  

始终为网站指定一个SearchAction,如果支持应用搜索,则可选择另外一个。

富结果仅包含一个搜索框,但您指定了三个SearchAction项。它没有记录在这种情况下会发生什么(例如,谷歌可能决定永远使用第一个,或者根本不使用)。