Окно поиска по сайту

Вы можете предложить своим потенциальным клиентам дополнительное преимущество. Разместите у себя специальный код, чтобы пользователь мог выполнять поиск по вашему сайту или приложению прямо на странице результатов. При этом ему будут доступны подсказки в реальном времени и другие функции окна поиска.

Когда ваш сайт появляется в результатах Google Поиска, под ссылкой на него может автоматически показываться ещё одно окно поиска, которое будет относиться только к самому сайту. Вам ничего не нужно будет для этого предпринимать. По умолчанию поиск в этом окне выполняется с помощью технологии Google. Однако вы можете внедрять на веб-страницы структурированные данные типа WebSite, которые помогают Google корректно интерпретировать ваш контент.

Если в Google Поиске уже доступно окно поиска по вашему сайту, вы можете настроить некоторые его параметры, добавив структурированные данные WebSite.

Как реализовать окно поиска по сайту

Как добиться того, чтобы при показе вашего контента в результатах поиска Google показывалось окно поиска:

  1. Интегрируйте поисковую систему в свой сайт или в приложение Android.

    Введя поисковый запрос в дополнительном окне, пользователь будет переадресован на сайт или в приложение и увидит страницу с результатами. Чтобы эта функция работала, вам понадобится настроить поисковую систему.

    • Сайты. Добавьте поисковую систему на сайт. Она будет перенаправлять запросы пользователей на нужную страницу с учетом синтаксиса ваших структурированных данных. Поисковая система должна поддерживать запросы в кодировке UTF-8.
    • Приложения. Узнайте, как добавить поисковую систему в приложение. Приложение Android должно поддерживать намерение ACTION_VIEW из результатов поиска и соответствующий URI данных, указанный в свойстве potentialAction.target вашей разметки.
  2. Добавьте элемент структурированных данных WebSite на главную страницу сайта. Приложение обязательно должно быть связано с сайтом, даже если он состоит из одной страницы. В противном случае поиск работать не будет. Дополнительные рекомендации:
    • Добавляйте эту разметку только на стартовую страницу сайта.
    • Всегда указывайте один объект типа SearchAction для поиска по сайту, а другой – для поиска по приложению (если применимо). Обратите внимание, что указывать объект типа SearchAction для сайта обязательно, даже если вы считаете поиск в приложении более важным. Это необходимо, чтобы у пользователей, которые отправляют запросы не с телефона Android или не установили ваше приложение, появлялся список результатов, относящийся к сайту.
    • Узнайте, в каких частях страницы нужно размещать структурированные данные выбранного вами формата.
  3. Выполните инструкции, которые обеспечат показ расширенных результатов.
  4. Протестируйте свой код с помощью инструмента проверки расширенных результатов.
  5. Проверьте, как работает ваша поисковая система. Для этого скопируйте URL WebSite.potentialAction.target из структурированных данных, подставьте вместо {search_term_string} тестовый запрос и выполните поиск по этому URL в браузере. Например, если у сайта адрес example.com и вы хотите протестировать запрос kittens (котята), URL будет таким: https://www.example.com/search/?q=kittens.
  6. Укажите предпочтительный канонический URL главной страницы домена, добавив атрибут rel="canonical" на все варианты главной страницы. Это поможет алгоритму Google Поиска выбрать корректный URL для разметки. Обратите внимание, что ваш сервер должен поддерживать кодировку UTF-8.
  7. В приложении включите точные фильтры намерений. Это обеспечит функционирование ведущего к приложению URL, который вы указали в разметке. С примером создания фильтров intent можно ознакомиться для URL Google Поиска можно ознакомиться в статье, посвященной индексированию приложений Firebase.
  8. Опубликуйте страницу и с помощью инструмента проверки URL посмотрите, как она выглядит в результатах поиска Google. Убедитесь, что доступ Google к странице не заблокирован файлом robots.txt или метатегом noindex и для него не требуется авторизация. Если все в порядке, запросите повторное сканирование ваших URL.
  9. Отправляйте нам файл Sitemap, чтобы информировать нас об изменениях на сайте. Отправку такого файла можно автоматизировать с помощью Search Console Sitemap API.

Пример

Ниже приведен пример для запроса "Pinterest" в Google. Среди полученных результатов пользователь увидел окно поиска сразу под ссылкой на нужный сайт.

Использование окна поиска по сайту

Далее приведены примеры разметки для окна поиска по сайту, на котором установлена пользовательская система поиска.

JSON-LD

Нажмите кнопку ниже, чтобы увидеть пример кода в формате JSON-LD.



    
Микроданные

Нажмите кнопку ниже, чтобы увидеть пример кода в формате микроданных.



    

Нажмите кнопку ниже, чтобы увидеть пример кода JSON-LD для сайта и приложения.



   

Рекомендации

Чтобы материалы вашего сайта могли появляться в расширенных результатах, вам необходимо следовать перечисленным ниже рекомендациям.

Алгоритм Google Поиска может добавить окно поиска под ссылкой на ваш сайт, даже если вы не предпринимали действий, описанных в статье. Вы можете избежать этого, указав на главной странице следующий метатег:

<meta name="google" content="nositelinkssearchbox" />

Типы структурированных данных

Чтобы ваш контент мог демонстрироваться в расширенных результатах, необходимо задать все обязательные свойства.

Измененный тип WebSite

Google Поиск использует измененный тип структурированных данных WebSite для окон поиска сайтов и приложений. Подробное описание структурированных данных типа WebSite приведено на сайте schema.org, однако в случае с Google Поиском оно немного отличается от стандартного. Более подробные сведения представлены ниже.

Обязательные свойства
potentialAction

Массив из одного или двух объектов SearchAction.

Объект описывает URI, к которому нужно направить запрос, и синтаксис этого запроса. Вы должны добавить страницу или обработчик намерений, который может получить запрос и выполнить корректный поиск по отправленной строке. Если у пользователя нет определенного приложения Android (или оно есть, но отсутствует намерение для Android), из поискового окна будет отправлена по указанному адресу версия запроса для сайта. Если пользователь выполняет поиск на устройстве Android, а схема целевого URI соответствует намерению для Android, будет отправлено это намерение.

Чтобы включить поддержку поиска в браузере на компьютере, необходимо создать объект SearchAction для сайта. Если вам также нужна поддержка поиска по приложению, вы можете добавить объект SearchAction для приложения. В каждом объекте SearchAction должны быть указаны следующие вложенные свойства:

Пример для сайта

В приведенном ниже примере запрос GET отправлен по адресу https://query.example.com/search?q=user%20search%20string.


"potentialAction": [{
  "@type": "SearchAction",
  "target": {
    "@type": "EntryPoint",
    "urlTemplate": "https://query.example.com/search?q={search_term_string}"
  }
  "query-input": "required name=search_term_string"
}]

Пример для приложения

В приведенном ниже примере намерение Android отправлено по адресу android-app://com.example/https/query.example.com/search/?q=user_search_string.


"potentialAction": [{
  "@type": "SearchAction",
  "target": {
    "@type": "EntryPoint",
    "urlTemplate": "android-app://com.example/https/query.example.com/search/?q={search_term_string}"
  }
  "query-input": "required name=search_term_string"
}]
potentialAction.query-input

Text

Используйте строку required name = search-term или любой плейсхолдер, который применяли для свойства target. Убедитесь, что эти два плейсхолдера совпадают. Например, в обоих плейсхолдерах из свойств target и query-input используется строка search-term:


"potentialAction": [{
  "@type": "SearchAction",
  "target": {
    "@type": "EntryPoint",
    "urlTemplate": "https://query.example.com/search?q={search-term}"
  }
  "query-input": "required name=search-term"
}]
potentialAction.target

EntryPoint

Объект EntryPoint со свойством urlTemplate.

Значением свойства urlTemplate должна быть строка такого формата: search_handler_uri{search_term_string}.

Пример:

https://query.example.com/search?q={search_term_string}
search_handler_uri В случае с сайтом это URL обработчика поисковых запросов, а в случае с приложением – URI обработчика намерений в вашей поисковой системе.
search_term_string

Строка плейсхолдера, который замещается запросом пользователя, когда он нажимает кнопку "Поиск" в поисковом окне. Убедитесь, что строка плейсхолдера, которым вы пользуетесь, соответствует значению элемента name в свойстве query-input.

url

URL

URL того сайта, который является целью поиска. Ведет на каноническую главную страницу сайта. Пример: https://www.example.org

Сбор статистики по расширенным результатам в Search Console

С помощью Search Console вы можете собирать данные об эффективности страниц вашего ресурса в Google Поиске. Вам не обязательно регистрироваться в этом сервисе, чтобы ваши страницы попали в результаты поиска. Однако это позволит узнать, как роботы Google воспринимают сайт, и оптимизировать его. Рекомендуем проверять информацию в Search Console в следующих случаях:

  1. После первого размещения структурированных данных
  2. После обновления кода и шаблонов страниц
  3. При регулярном анализе трафика

После первого размещения структурированных данных

Когда ваши страницы будут проиндексированы, проверьте их на наличие ошибок с помощью отчета о статусе расширенных результатов. Желательно, чтобы количество страниц с правильной разметкой выросло, а число ошибок и предупреждений – нет. Если в структурированных данных будут обнаружены ошибки, примите следующие меры:

  1. Устраните ошибки.
  2. Проверьте исправленную страницу и убедитесь, что проблема исчезла.
  3. Запросите проверку ресурса, используя отчет о статусе расширенных результатов.

После обновления кода и шаблонов страниц

Если вы внесли значительные изменения на сайт, проверьте, не увеличилось ли число ошибок и предупреждений, связанных со структурированными данными.
  • Увеличилось число ошибок? Возможно, вы создали шаблон, с которым что-то не так, или имеющийся шаблон используется некорректно.
  • Уменьшилось число действительных элементов, но не увеличилось количество ошибок? Возможно, с ваших страниц были удалены структурированные данные. Выяснить, с чем связаны ошибки, можно при помощи инструмента проверки URL.

При регулярном анализе трафика

Анализировать трафик сайта из Google Поиска можно с помощью отчета об эффективности. Из этого отчета вы узнаете, как часто страница появляется в Поиске в виде расширенного результата, с какой регулярностью пользователи нажимают на нее и какова ее средняя позиция в результатах поиска. Эти сведения также можно автоматически получать с помощью Search Console API.