Как создать XML в автозаполнении пользовательского поиска Google?

Я пытаюсь использовать структуру по адресу https://developers.google.com/custom-search/docs/queries, но загрузить его не удается.

<Autocompletions>
  <Autocompletion term="cake" type="1" language=""/>
  <Autocompletion term="strawberry.*" type="2" match="2" language=""/>
  <Autocompletion term="vanilla" type="2" language=""/>
  <Autocompletion term="apple" type="3" language="">
    <Promotion id="1" queries="dessert" title="Apple pie for dessert!" url="http://www.example.com/applepieforsale"
        start_date="" end_date="" image_url=""  description="Apple pie is the best dessert ever!"/>
    <Promotion id="2" queries="apple" title="Buy Apple pie" url="http://www.example.com/applepieforsale"
        start_date="" end_date="" image_url="" description="We stock the best apple pie in the world, right here."/>
  </Autocompletion>
</Autocompletions>

Мой сайт использует wordpress; Я получаю название сообщений и хочу использовать его в качестве строкового запроса для пользовательского поиска Google.

Пожалуйста, помогите мне понять, как создать XML для автозаполнения.


person Huy Pics    schedule 25.07.2013    source источник


Ответы (2)


Ему не нравятся атрибуты описания. Если вы удалите их, тогда это будет работать.

person thugsb    schedule 29.04.2014

Оставьте все термины в XML следующим образом:

<Autocompletion term="%term-title%" type="%type%" language=""/>

Будьте осторожны с длиной терминов, я обнаружил, что если это 3 или менее слов, Google примет их нормально. Также нет больших ограничений на количество добавляемых записей (я добавил 9000 записей за один раз). И я добавил их на русском языке, так что проблем с кодировкой тоже нет.

Окончательный формат должен быть таким:

<Autocompletions>
  <Autocompletion term="%term-title%" type="%type%" language=""/>

  ...

  <Autocompletion term="%term-title%" type="%type%" language=""/>
</Autocompletions>

Не очень хорошо задокументировано Google, поэтому вам придется тратить время на чтение этого. Надеюсь, поможет :)

person iSS    schedule 02.07.2014