В 2014 году моя статья «WordPress SEO, базовая оптимизация» была опубликована в журнале WP Magazine.
С тех пор WordPress обновлялся и я решил создать на своем сайте статью, контент которой будет обновляться с течением времени, следуя тенденциям SEO и апдейтам WordPress.
В статье базовое SEO для WordPress описывается как настройки самой CMS, плагины, так и другие полезности, которые помогут владельцу сайта безотносительно выбранной в дальнейшем стратегии продвижения получить ощутимый SEO-эффект. Так сказать — основа, которую нужно заложить в любом случае.
Приступим!
Ссылки
Постоянные ссылки или ЧПУ
По умолчанию (Настройки → Постоянные ссылки) WordPress создает адреса страниц с помощью цифрового идентификатора, например: ваш_домен/?p=123
. Лаконично, коротко, к сожалению не информативно.
Не издевайтесь над возможными посетителями с поисковых систем, да и сами системы не мучайте — задайте ссылки понятными словами, повысьте вес этих слов на странице. Я лично предпочитаю использовать следующую комбинацию:
Таким образом диктуется четкая логическая структура, поисковику легче определять значимые разделы на сайте, а так же пользователь при необходимости может попадать на раздел путем удаления символов до ближайшего слеша.
В случае, если необходима дополниельная кастомизация — воспользуйтесь списком возможных тегов, с помощью которых возможно построить нужный вид ссылок.
Кириллица
По умолчанию WordPress использует для ссылки те же символы, что используются в названии статьи. Соответственно, если название статьи будет кириллическим — кириллические символы будут взяты и для URL.
Согласитесь, /%D0%BF%D1%80%D0%B8%D0%B2%D0%B5%D1%82-%D0%BC%D0%B8%D1%80/
выглядит уже не так привлекательно, как /привет-мир/
? Тем не менее, ваша кириллическая ссылка будет выглядеть именно так во многих сервисах, где вы решите ей поделиться или куда захотите ее добавить.
В случае, если вы решитесь облегчить жизнь тем, кто не использует UTF-кодировку, а обычным английским переводом воспользоваться возможности вы не имеете (например вы не знаете языка, либо у вас двуязычный сайт и оригинальное название на английском уже занято), — остается использовать транслитерацию.
В плане автоматизации процесса я бы рекомендовал воспользоваться плагином, а именно Cyr to Lat Enhanced, который конвертирует в латиницу кириллические символы в ссылках.
А поймут ли вас поисковики?
Для всех важных статей проверяйте автоматически созданный URL вручную. Как это сделать? Скопируйте адрес, зайдите в поисковик и вставьте адрес в поисковое поле. Вполне может оказаться, что у вас с поисковой машиной расходятся взгляды на то, как именно выглядит транслитерация какого-либо слова.
Сразу же уточним — положительный результат в одной поисковой системе не является гарантией положительного результата в других.
Доменное имя
Не забудьте определить адрес вашего сайта (Настройки → Общие) — с www или без, с http протоколом или https:
После сохранения изменений проверьте — работает ли переадресация страниц, введя адрес главной страницы в разных вариациях. Если переадресация работать не будет — это может привести к тому, что поисковики расслоят ваш сайт на пару идентичных и общий ссылочный вес может быть рассеян. Например вместо 100 ссылок, ведущих на страницу http://www.yoursite.com/page/
вы получите только 60, а другие 40 будут вести на ее дубль по адресу http://yoursite.com/page/
не особо помогая оригиналу.
Канонические ссылки
Канонические ссылки — это ссылки, которые не видны пользователям, но работают для поисковых систем аналогично 301 редиректу. С их помощью вы можете указать поисковику страницу-источник в случае, если возникает необходимость использовать один и тот же контент несколько раз по разным адресам.
Несколько возможных случаев, когда WordPress может создавать несколько адресов для одной страницы:
- Основная страница:
http://somesite.com/page/
- Та же страница, но с якорем ответа на комментарий:
http://somesite.com/page/?replytocom=593#respond
- Та же страница, но с доступом через идентификационный номер:
http://somesite.com/?p=425623
Для пользователей страница будет выглядеть абсолютно одинаково, но для поисковиков — три адреса означают три разных страницы. Это означает, что, как и в случае с дубликатами доменов, ссылочная масса может быть рассеяна, да, к тому же, страницы будут признаны дубликатами на одном домене, чего поисковые машины не слишком-то любят.
В данном случае простое добавление в <head></head>
секцию следующей записи решит проблему дубликатов:<link rel="canonical" href="http://somesite.com/page/" />
, так как каноническая ссылка будет перенаправлять поискового робота со всех возможных вариантов на тот, что в ней указан, в данном случае — на адрес основной страницы.
Вы можете либо включить механизм проставления таких ссылок в вашу тему, либо воспользоваться одним из SEO-плагинов, которые позволяют решить вопрос автоматически. Я лично предпочитаю Yoast SEO.
Таксономии в разрезе WordPress SEO
Таксономия — это, в общем случае, учение о принципах и практике классификации и систематизации.
WordPress по умолчанию использует два вида пользовательских таксономий: рубрики (с вертикальной иерархией) и метки (с горизонтальной иерархией).
Как с ними обращаться? Все просто. Вертикальная иерархия нужна для четкой систематизации — продумайте структуру так, чтобы поисковики легко считали структуру сайта (поняли: где разделы, где одиночные страницы), а также пользователям легко и логично было по ней передвигаться через меню и «хлебные крошки».
Горизонтальная иерархия предназначена в первую очередь для ускорения получения информации, как людьми, так и роботами. «Облако тегов» позволит сразу же, не погружаясь по дереву вертикальной иерархии, кликнуть на интересующую тему и очутиться там, где есть ответ на вопрос. Проставляйте метки в каждом посте и странице, где это кажется оправданным, но не переусердствуйте. До 10 еще выглядит нормальным, а вот за 30 уже наводит на мысли о спаме не только роботов поисковых систем.
Robots.txt
robots.txt — это текстовый файл, по умолчанию располагающийся в корне сайта и рекомендующий роботам поисковых систем индексировать или не индексировать определенные разделы сайта.
WordPress по умолчанию на сервере не содержит данного файла, точнее при запросе данного адреса http://yoursite.com/robots.txt
он создается виртуально, базируясь на настройках CMS, которые дают не слишком богатый выбор из «позволить роботам индексировать сайт» и «закрыть сайт от индексации польностью».
Ради справедливости нужно заметить, что сейчас, когда поисковые машины научились воспроизводить CSS и JavaScript (пусть и не в полном объеме), надобность для тонкой настройки robots.txt у многих не сложных сайтов отпадает.
Тем не менее, если вам необходим физический файл в корне сайта, в котором вы по какой-либо причине хотите исключить из поисковой выдачи какие-либо файлы или страницы — создайте его вручную (виртуальный автоматически перестанет показываться), либо воспользуйтесь плагином, который позволит изменять виртуальный файл, как, например: DL Robots.txt.
Sitemap.xml
sitemap.xml — файл-подсказка, хранящий в себе список страниц вашего сайта, которые вы бы хотели передать в поисковые машины для индексации. Формат, максимальное количество страниц и максимальный объем данного файла незначительно меняются от поисковика к поисковику, но в целом соответствуют стандартному протоколу Sitemap.
WordPress по умолчанию не содержит готового sitemap.xml файла. Решить данную проблему можно следующими способами:
- посредством плагина (я, опять же, предпочитаю Yoast SEO, хотя в репозитории есть и другие), настроить и генерировать автоматически;
- воспользоваться любым онлайн сервисом (просто вбейте в поисковике
XML Sitemap
), генерировать по запросу и вручную размещать у себя на сервере; - написать вывод самому, используя нативные функции WordPress.
Перед передачей ссылки на готорый файл sitemap.xml не забудьте проверить правильность составления посредством сервисов самих поисковых систем: Яндекс, Google.
Сниппет в поисковой выдаче
Из широко известных полей, оказывающих непосредственное влияние на сниппет в поисковой выдаче, WordPress по умолчанию поддерживает только Title (функция wp_title()
), где автоматически отображает название записи или страницы.
В случае, если вы хотите большего (добавить мета-тег Description, кастомизировать тег Title, добавить Google+ Publisher Link, поля для Twitter Cards и Open Graph) — придется использовать плагины (тот же Yoast SEO), либо произвольные поля (замечательный плагин по работе с ними — Advanced Custom Fields) и вывод их непосредственно в тему сайта.
Отдельно нужно сказать про иконку сайта, она же favicon.
Начиная с версии 4.3 WordPress по умолчанию включает в себя функцию по добавлению favicon (Внешний вид → Настроить → Свойства сайта). Однако, в случае, если ваш логотип будет располагаться на прозрачном фоне — я лично советую воспользоваться специализированным плагином (вроде Favicon by RealFaviconGenerator), либо прописать код вручную, так как разные системы и устройства могут по-разному отображать прозрачность иконки.
Семантическая разметка
Семантическая разметка — это разметка страницы путем добавления дополнительных тегов и атрибутов, которые помогают поисковым роботам обработать информацию, содержащуюся в контенте.
Ранее я уже упомянул, к примеру, Open Graph — это один из протоколов микроразметки, который был разработан Facebook и чье действие вы можете лицезреть каждый раз, когда размещаете в своей публикации на Facebook какую-либо ссылку: к посту подгружается какая-то фотография, краткое описание и название страницы. По сути это означает, что робот Facebook сбегал по той ссылке, которую вы вставили в публикацию, прочел нужные ему Open Graph теги (какую картинку взять, что в названии написать и так далее), если они там были, и подгрузил это все в вашу публикацию.
Open Graph используется не только Facebook, но и другими социальными сетями, так что не игнорируйте ее.
Встроить ее достаточно просто, воспользовавшись тем же Yoast SEO плагином, чего не скажешь о такой не менее важной вариации семантической разметки, как Schema.org.
Schema.org выделяется тем, что официально поддерживается ведущими поисковыми машинами планеты, соответственно — чем полнее вы с ее помощью опишите свой контент — тем больше пользы вам это принесет в поисковой выдаче. Однако проблема именно в том, что Schema.org очень обширна и автоматически ее добавить на сайт возможно только в очень небольшом объеме. Соответственно в WordPress ее по умолчанию нет.
Хотя, меньше — лучше, чем ничего, а потому настоятельно советую присмотреться к плагину Add Meta Tags. Главное — после установки не забудьте отключить в нем Open Graph поля и другие теги, которые вы уже будете использовать на сайте, например посредством Yoast SEO, иначе возможно задвоение тегов, причем не всегда совпадающего содержания.
HTML код
Во-первых, нужно запомнить, что не WordPress ответственен за код вашего сайта в полном объеме. В основном это зависит от темы, которую вы используете.
Предупрежден — следовательно, вооружен:
- Проверьте, как именно создается на ваших страницах заголовок H1, к примеру. Если он по умолчанию уже выводится с копией названия записи — не включайте H1 в сам контент. Такой заголовок должен быть на странице в единственном экземпляре;
- Проверьте — в случае, если в ленте рубрики записи выводятся каждая со своим заголовком H1, разделены ли они тегами
<section>
и указан ли на странице<!DOCTYPE html>
, т.е. браузер будет работать именно с HTML5, который разрешает использование нескольких заголовков в подобных случаях; - Проверьте, нет ли скрытых в коде сайта из подвала или из мета-тегов. Вам вряд ли, особенно на первых порах, хочется замарать себя внешними ссылками на не релевантный контент.
В остальном же уместны стандартные для всех сайтов рекомендации — проверяйте код на валидность, заполняйте атрибуты alt
у всех изображений и так далее.
Ускорьте индексацию
WordPress по умолчанию предоставляет возможность отправки пингов (сообщений) в разные сервисы, оповещая их о том, что у вас появилась новая статья (Настройки → Написание → Сервисы обновления).
Я бы не рекомендовал спамить всех и вся, банально потому что рано или поздно вы начнете попадать в черные листы, да и кроме того, каждая отправка пинга — это дополнительная нагрузка на сервер.
Тем не менее, в дополнение к по умолчанию прописанному в WordPress Ping-O-Matic (http://rpc.pingomatic.com/
) я бы рекомендовал как минимум добавить пару русскоязычных широкоизвестных ресурса:
- http://ping.blogs.yandex.ru/RPC2
- http://blogsearch.google.ru/ping/RPC2
А так же еще несколько по аналогии, если сайт у вас мультиязычный:
- http://blogsearch.google.com/ping/RPC2
- http://blogsearch.google.us/ping/RPC2
- http://blogsearch.google.co.uk/ping/RPC2
- и так далее.
В заключение
Несколько советов дополнительно к вышеозначенному:
- Не выводите в ленты рубрик записи целиком. Используйте функцию
the_excerpt()
вместоthe_content()
. Таким образом вы уменьшите количество дублированного контента на сайте и облегчите пользователям поиск необходимого материала, так как ускорится прокрутка ленты; - Пользуйтесь полем «Цитата» при написании записей. Это позволит вам выводить в ленту не первые несколько строк текста записи с многоточием в конце и словами «Читать далее», а краткое содержание записи, некий зазывающий текст, что опять же, спасет от дублирования контента;
- Исключите из поисковой индексации архивы по датам. Особой тематической нагрузки такие архивы не несут, но полностью дублируют существующие рубрики;
- Исключите из поисковой индексации страницы результатов поиска по сайту. Ничего полезного, кроме дублирования существующих рубрик и самой поисковой выдачи, эти страницы в себе не несут.
- Не исключайте из поисковой индексации разделы меток вида
http://yoursite.com/tag/something/
. В отличие от поисковых запросов и архивов по датам — данный вид страниц несет в себе полезную тематическую нагрузку, которую определили вы сами. Что же касается дублирования контента, то Google обещал не наказывать за такие вещи, если все делать по-белому (метки как раз попадают в эту категорию), в открытую, без злого умысла.