Интеграция AdSense для поиска и WordPress + поддержка протокола HTTPS

Google AdSense для поиска Давным-давно я уже рассказывал про интеграцию Пользовательского поиска Google и WordPress. Сегодня Пользовательский поиск Google заметно изменился. Если создание поисковых систем не усложнилось, то настройка их внешнего вида запросто может вызвать замешательство, особенно в связи с отсутствием внятной документации. Я знал, что Google предоставляет альтернативный способ создания поисковых систем непосредственно в AdSense, и решил испытать такую поисковую систему, «доработанную» для поддержки протокола HTTPS, на этом сайте.

Почему я решил попробовать AdSense для поиска?

И Adsense для поиска, и Пользовательский поиск позволяют устанавливать на сайты поисковые системы и получать доход от объявлений AdSense, показываемых на страницах результатов поиска, при этом Пользовательский поиск также доступен в качестве самостоятельного продукта с поддержкой расширенных функций. К сожалению, я не придал им должного значения и после нарушения работоспособности Пользовательского поиска, установленного более пяти лет назад, решил попробовать AdSense для поиска. В результате была написана эта статья, посвященная созданию поисковой системы AdSense для поиска, ее полной интеграции на сайт, построенный на базе WordPress, а также «доработке» компонентов, обеспечивающих отображение формы и результатов поиска, с целью добавления поддержки протокола HTTPS. В рассматриваемом случае полная интеграция подразумевает размещение формы и результатов поиска без заметного нарушения дизайна и, конечно же, без использования внешних Веб-серверов.

Создание поисковой системы Adsense для поиска

Для создания поисковой системы необходимо войти в аккаунт AdSense, перейти на закладку Мои объявления, в левой части страницы выбрать раздел Поиск и нажать кнопку + Новая система пользовательского поиска. На открывшейся после этого странице Поиск » Системы пользовательского поиска следует задать Название поисковой системы (оно будет видно только Вам, но не рекламодателям), в разделе Область поиска выбрать переключатель Только выбранные мной сайты и ввести URL сайта без указания протокола, перечислить Ключевые слова через запятую, не убирать галочку Использовать Безопасный поиск, если на сайте отсутствует откровенная «клубничка», выбрать Страну, Язык и Кодировку сайта:

Создание поисковой системы AdSense для поиска

После этого нужно раскрыть блок Стиль объявлений, нажать кнопку Создать свой стиль и изменить цвета рекламных объявлений для наилучшего соответствия дизайну сайта (ответы на большинство вопросов, связанных с оформлением объявлений, можно найти в справочной системе AdSesnse):

Настройка стиля объявлений

Для сохранения созданного стиля, например, для использования на других сайтах необходимо щелкнуть по ссылке Создать новый стиль объявления на основе заданных пользовательских настроек, а затем в окне Создание стиля объявлений ввести Название стиля и нажать кнопку Сохранить стиль объявлений:

Сохранение созданного стиля объявлений

После завершения настройки стиля объявлений следует раскрыть блок Результаты поиска, в разделе Результаты поиска перевести переключатель Показать результаты: в положение на моем веб-сайте с использованием фреймов iFrame и ввести URL вывода результатов поиска с указанием протокола:

Настройка отображения результатов поиска

Также можно задать Ширину раздела результатов поиска ≤795 (ее можно будет изменить при установке кода результатов поиска на сайт).
Для завершения создания поисковой системы AdSense для поиска необходимо нажать кнопку Сохранить и получить код, а затем скопировать из открывшегося окна код формы и результатов поиска. Не обязательно выполнять копирование сразу, потому что код сохраненной поисковой системы всегда доступен в разделе Мои объявления » Системы пользовательского поиска аккаунта AdSense, и для его получения достаточно нажать кнопку Получить код.
Следует отметить, что Вы можете управлять поисковой системой AdSense для поиска не только в аккаунте AdSense, но и в аккаунте Пользовательского поиска, для быстрого перехода в который можно воспользоваться ссылкой Больше возможностей расширенного поиска, расположенной справа от кнопки Сохранить и получить код на странице создания / изменения поисковой системы. Эта возможность пригодится, например, для настройки продвижений и синонимов.

Установка поисковой системы Adsense для поиска на HTTP-сайт

Установка кода формы и результатов поиска на HTTP-сайт не отличается от аналогичной процедуры для старой версии Пользовательского поиска. Во избежание возможных вопросов, я кратко опишу ее основные этапы. Установка начинается с получения кода «новых» формы и результатов поиска:

Получение кода формы и результатов поиска

В первую очередь Вы должны заменить «штатную» форму поиска WordPress на «новую». В случае использования виджетов нужно удалить виджет Поиск, а затем добавить виджет Текст, ввести Заголовок и вставить код «новой» формы поиска в поле Содержимое. Если Вы предпочитаете непосредственное редактирование файлов темы, необходимо найти код «штатной» формы поиска (в подавляющем большинстве случаев он располагается в файле header.php, sidebar.php или searchform.php) и заменить его кодом «новой» формы поиска. Для обеспечения максимального соответствия «новой» формы поиска дизайну сайта следует тем или иным способом добавить определение стилей #cse-search-box, #cse-search-box input[type=text], #cse-search-box input[type=submit], а также #cse-search-box input[type=submit]:hover. Первый из перечисленных стилей определяет внешний вид формы поиска, второй — поисковой строки, третий и четвертый — кнопки «Поиск», когда на нее не наведен и наведен указатель мыши, соответственно.
После сохранения формы поиска можно переходить к размещению кода «новых» результатов поиска. Он должен быть установлен на отдельную страницу сайта, имеющую название Результаты поиска и Постоянную ссылку /s/ (название и Постоянная ссылка могут быть изменены с учетом соблюдения единственного условия, заключающегося в совпадении Постоянной ссылки и URL вывода результатов поиска, заданного при создании или изменении поисковой системы). В Свойствах страницы Результаты поиска нужно отключить комментарии, трекбэки и пинги, кроме этого необходимо исключить ее из всех используемых HTML- и XML-карт сайта, генерируемых с помощью плагинов XML Sitemap Generator for WordPress и Dagon Design Sitemap Generator или любых их аналогов. После подготовки страницы следует переключить редактор WordPress в текстовый режим и вставить на нее код «новых» результатов поиска. Для лучшего соответствия дизайну сайта можно подкорректировать его пятую строку, определяющую упомянутую выше Ширину раздела результатов поиска:

var googleSearchFrameWidth = 800;

Указание подходящей ширины раздела поиска и последующая публикация страницы Результаты поиска завершают установку «новой» поисковой системы.

Установка поисковой системы Adsense для поиска на HTTPS-сайт

Код формы и результатов поиска AdSense для поиска, полученный в аккаунте AdSense, не предназначен для установки на сайты, использующие протокол HTTPS. На сколько я понимаю, официальное (не требующее применение костылей недокументированных ухищрений) решение проблемы заключается в использовании кода формы и результатов поиска, полученного в аккаунте Пользовательского поиска. Противоречивость описанного пути состоит в том, что он предоставляет все ту же поисковую систему с ограниченной функциональностью, но отнимает главное преимущество AdSense для поиска, заключающееся в упрощенной процедуре установки. Другими словами, если Вы выбрали AdSense для поиска из-за того, что не хотите усложнять себе жизнь, Вас, скорее всего, не устроит код AdSense для поиска, полученный в аккаунте Пользовательского поиска. В связи с этим, я рекомендую Вам пойти другим путем.
Как показало изучение соответствующих форумов «наших западных партнеров», для обеспечения поддержки протокола HTTPS поисковой системой, код которой получен в аккаунте AdSense, достаточно, во-первых, изменить сценарий show_afs_search.js и разместить его на своем сайте, а, во-вторых, подкорректировать код формы и результатов поиска. На всякий случай перечислю все исправления, которые нужно сделать.
Изменение оригинального сценария show_afs_search.js заключается в удалении единственного указания протокола HTTP (замене единственного вхождения текста "http://" на "//"). Обновленный сценарий необходимо поместить в любую папку своего сайта, доступ к которой не ограничен, например, в /.
Корректировка кода формы и результатов поиска осуществляется по тому же принципу. В 11й строке кода формы поиска следует удалить текст http::

<script type="text/javascript" src="//www.google.ru/coop/cse/brand?form=cse-search-box&amp;lang=ru"></script>

В 9й строке кода результатов поиска нужно задать местонахождение обновленного скрипта show_afs_search.js без указания протокола:

<script type="text/javascript" src="//sergeysl.ru/show_afs_search.js"></script>

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

Впечатление от проверки AdSense для поиска на этом сайте

В начале статьи я сказал, что, к сожалению, не придал значение отсутствию поддержки расширенных функций в AdSense для поиска. Для осознания собственной ошибки оказалось достаточно выполнить несколько поисковых запросов. Во всех случаях результаты поиска содержали много (два и больше) раз повторяющиеся результаты. Данная проблема связана с тем, что в случае сайтов, сделанных на базе WordPress, кроме статей и страниц, как правило, имеются страницы рубрик и тегов, содержащих анонсы тех же самых статей. Если Пользовательский поиск позволяет запретить поиск в разделах /category/* и /tag/* с помощью Удаления сайтов, то AdSense для поиска не поддерживает эту расширенную функцию. Теоретически, можно запретить индексацию страниц рубрик и тегов, но, например, я преследовал совершенно другие цели при их создании. Получается, что выявленная проблема не имеет цивилизованного решения, и, следовательно, я не могу рекомендовать AdSense для поиска владельцам среднестатистических сайтов, сделанных на базе WordPress и использующих рубрики и / или теги. Если это Ваш случай, и Вас не устраивает стандартный поиск, придется разобраться с Пользовательским поиском v.2. В свою очередь, я постараюсь Вам помочь.

P.S.: Удаление поисковой системы AdSense для поиска

Необходимо отметить, что интерфейс AdSense позволяет Скрыть, но не удалить поисковую систему. Для ее удаления следует войти в аккаунт Пользовательского поиска, в левой части страницы выбрать раздел Изменение поисковой системы, отметить соответствующую поисковую систему, нажать кнопку Delete и, наконец, подтвердить свои намерения нажатием кнопки OK во всплывающем окне Удалить СПП.

Понравилась статья?

 Подписывайтесь на RSS или почтовую рассылку;

 Присоединяйтесь в Twitter, Facebook, Google+, VK;

 Делитесь ссылкой в социальных сетях или блогах:

2 комментария “Интеграция AdSense для поиска и WordPress + поддержка протокола HTTPS

  1. Поправь верстку. Слева иконки соцсетей загораживают текст. Читать невозможно.

Оставить комментарий