Вообще любая оптимизация сайта (не важно SEO или какая-нибудь другая) начинается еще на стадии разработки.
Однако, очень часто сайт создается впопыхах, кем-попало (кого смогли найти за те деньги), без технического задания, а если оно и есть, то меняется прямо на ходу. Поэтому, ко мне часто поступают обращения с просьбой подготовить сайт на движке WordPress (поскольку популярная платформа) под SEO-оптимизацию.
Метатэги
Ок. Начнем с простого. Установим плагин «All In One SEO Pack» . Делается это в админке, в разделе «Плагины» , в подпункте «Добавить новый» .
На открывшейся странице, в строку поиска, вводите название плагина, ищите, устанавливаете, активируете.
После этого в окне редактирования или создания поста, ниже поля куда вы вводите текст, появляются поля для тайтла, дескрипшина и кейвордсов. Если не знаете что это или зачем, то вы ни шиша не понимаете в SEO. Но у меня для вас хорошая новость, вся инфа есть в интернете. Воспользуйтесь поиском Яндекса, Гугла, поищите на ютубе. Не тупите!
Про метатэги пишу в этом посте исключительно для комплекта. Даже настроек самого плагина не буду касаться. Это та часть SEO-оптимизации, которую лучше сделать одновременно с добавлением Сайтмапа и Роботса, о которых пойдет речь дальше. Почему? Потому, что это займет всего пару минут, а в будущем точно понадобится.
Sitemap.xml
Теперь добавим карту сайта. Это тоже делается с помощью плагина. Их много, но я предпочитаю тот, что зовется «Google XML Sitemaps» . Ставится ровно так же как и предыдущий.
Настраивается в разделе админки (левое вертикальное меню) «Настройки» , подпункт «XML-Sitemap» . Собственно, достаточно тупо снять галочку с пункта «Add sitemap URL to the virtual robots.txt file.» и сохранить (там есть кнопка сохранения, если пролистаете ниже).
Чтобы убедиться, что все работает, откройте в соседней вкладке ссылку типа http://ваш_сайт/sitemap.xml
Увидели что-то вроде этого?
Отлично. Не закрывайте вкладку. Она нам еще пригодится. А пока переходим в админку.
Robots.txt
Этот файл можно заливать без каких-либо плагинов. По FTP например. Но если нет доступа или хочется все проделать с комфортом, то… Ставим плагин. Как вы уже убедились на предыдущих примерах, это очень простое действие, но профессионалы берут за это деньги.
Итак, ставим плагин «WordPress Robots.txt File» . Опять-же, можете выбрать другой, который будет работать.
Ставим плагин, активируем, переходим в «Настройки» , в подпункт «Чтение» .
На открывшейся странице видим поле robots.txt
Если оно чем-то заполнено — удалите. Сейчас мы его заполним новым содержимым.
Перейдите по ссылке (желательно открыть эту ссылку в новой вкладке). На открывшейся странице вы можете видеть три поля и кнопку.
Скопируйте из адресной строки браузера адрес вашего сайта и вставьте его в поле с надписью «Введите адрес сайта» .
Теперь перейдите во вкладку с Сайтмапом. Помните, выше по тексту я просил ее не закрывать? Скопируйте из адресной строки путь к файлу sitemap.xml и вставьте в поле «Введите адрес вашего файла sitemap.xml» .
Нажмите кнопку «Создать robots.txt» .
Если все сделано правильно, в поле под кнопкой появится текст. Скопируйте его весь и вставьте в поле robots.txt , открытое в админке вашего сайта («Настройки», «Чтение») .
Если на открывшейся странице вы видите текст, который только что копировали и вставляли из поля, значит все установилось как надо.
Помогло? Зашли Админу на чай.
Файл robots.txt это текстовой файл, в котором прописываются правила для поисковых машин для сканирования, а значит индексации папок и файлов сайта. Находится файл robots.txt должен в корневом каталоге сайта. Файл robots.txt наряду с это основные документы SEO оптимизации блогов сделанных на CMS WordPress.
Важно! Недопустимо пустые переводы строк между директивами User-agent и Disallow (Allow), а также между директивами Disallow и Allow .
Важно! URL файла robots.txt чувствителен к регистру.
На базовой версии файл robots.txt для wordpress выглядит следующим образом:
User-agent: Disallow: /wp-admin/ Disallow: /wp-includes/
- User-agent э то обращение к поисковикам. [*] звезда, означает, что следующие директивы группы обращены ко всем поисковикам;
- Директива Disallow запрещает поисковикам индексировать только то, что находится в папках /wp-admin/ и /wp-includes/.
Файл robots.txt составляется из строк, каждая из которых является отдельной директивой. Директива, а проще говоря, правило, пишется для поисковиков. Весь файл robots.txt пишется по специальному несложному синтаксису.
Синтаксис файла robots.txt
Символ ‘#’ назначен для комментариев. Все, что находится после решетки и до первого перевода строки не исполняется и не учитывается поисковиками.
Первой рабочей директивой файла robots.txt (начало группы) нужно прописывать директиву User-agent . Она показывает к кому поисковику относится следующие за ним директивы;
Недопустимо пустые переводы строк между директивами User-agent и Disallow (Allow);
Директива User-agent со звездой, то есть User-agent: * , означает, что правила robots.txt относятся ко всем поисковикам;
Для главных поисковых роботов Яндекс и Google директивы User-agent файла robots.txt должны выгладить так:
User-agent: Yandex User-agent: Googlebot
Правила для поисковиков прописываются директивами «Disallow» — запрет или «Allow»-разрешение;
User-agent: * Allow: /cgi-bin Disallow: / # запрещает скачивать все, кроме страниц # начинающихся с "/cgi-bin"
Любой файл robots.txt должен содержать директиву «Disallow»;
Пустая Disallow разрешает индексацию всего сайта, Disallow закрытая слеш (/) полностью закрывает сайт от индексации.
Disallow: / # блокирует доступ ко всему сайту
Составим Файл robots.txt для wordpresss
Что же стоит спрятать от поисковиков?
Разумно спрятать все папки с личной информацией, паролями, логинами и т.п. Это три папки. Директивы выглядят так:
User-agent: * Disallow: /cgi-bin/ Disallow: /wp-admin/ Disallw: /wp-includes/
Все плагины блога, темы, кэш не являются контентной информацией блога, поэтому их тоже спрячем.
Disallow: /wp-content/plugins/ Disallow: /wp-content/cache/ Disallow: /wp-content/themes/
В SEO продвижении, особенно в структуре WP, важное значение имеет отсутствие повторов (дублирование) контента в зоне одного домена. Дублирование возникает при редактировании материалов, при комментировании, при работе на блоге нескольких авторов, при постоянном упоминании одного автора в представлении к статье (имя автора). Много дублирования в тегах блога. Cтоит спрятать эти папки от поисковиков.
Disallow: /*?* Disallow: /*?
Таким же образом вы можете запретить индексацию любой папки или файла блога. Чтобы запретить индексацию файлов, например.pdf нужно прописать директиву:
Disallow: /*.pdf
Спецсимвол звезда ‘*’ означает любую, включая пустую, последовательность символов.
В файле robots.txt есть одна интересная директива специальная для Яндекс. Это директива Host. С помощью неё вы можете (должны) сообщить Яндекс основной домен (главное зеркало) своего блога. Директив Host в файле должна быть одна. Если внесены несколько директив Host читается первая по списку. Правда, для этого нужно сделать отдельную секцию для “User-agent” для Яндекс.
User-agent: Yandex
В файл robots.txt обязательно нужно вставить информацию о своей карте Sitemap
Карту-сайта нужно генерировать при помощи любого веб-инструмента Sitemap. Он генерирует четыре формата карты-сайта. Один из них, файл формата [.xml], сначала нужно загрузить в корень сайта, а потом включить в файл robots.txt. Если карт-сайта несколько загрузите все. Рекомендую два генератора Sitemap:
- https://pro-sitemaps.com/
- http://www.mysitemapgenerator.com/
Если вы видите большую загрузку своего сервера, то можно воспользоваться директивой «Crawl-delay». Она задаст время в миллисекундах, между загрузками двух страниц. Добавлять директиву «Crawl-delay» нужно сразу после “User-agent”.
User-agent: * Crawl-delay: 3.5 # задает таймаут в 3.5 секунды
Вообще менять файл robots.txt на сайте WordPress это работа творческая. Каждый файл robots.txt должен быть индивидуальным и отвечать вашим личным требованиям к поисковикам.
Файл robots.txt для wordpress: пример
Приведу, как мне кажется, разумный Файл robots.txt для wordpress. Закрываем от роботов, кроме всего прочего, рубрики (category), архивы автора (autor), и страница (page).
User-agent: *
Disallow: /cgi-bin
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/cache/
Disallow: /wp-content/themes/
Disallow: /wp-trackback
Disallow: /wp-feed
Disallow: /wp-comments
Disallow: /category/
Disallow: /author/
Disallow: /page/
Disallow: */trackback
Disallow: */comments
Disallow: /*.php
Sitemap: http://ваш_сайт.ru/sitemap.xml.gz
Sitemap: http://ваш_сайт.ru/sitemap.xml
User-agent: Yandex
Disallow: /cgi-bin #блокирует доступ к страницам начинающихся с "/cgi-bin"
Disallow: /wp-admin/ #блокирует доступ к содержимому папки wp-admin
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
#блокирует содержимое папки plugins в каталоге wp-content
Disallow: /wp-content/cache/
Disallow: /wp-content/themes/
Disallow: /wp-trackback #блокирует доступ к страницам нащинающихся с wp-trackback
Disallow: /wp-feed
Disallow: /wp-comments
Disallow: /category/
Disallow: /author/
Disallow: /page/
Disallow: */trackback
Disallow: */comments
Disallow: /*.php
Host: ваш_сайт.ru
Sitemap: http://ваш_сайт/sitemap.xml
…мы отказываемся от директивы Host. Теперь эту директиву можно удалять из robots.txt, но важно, чтобы на всех не главных зеркалах вашего сайта теперь стоял 301-й постраничный редирект.
Пояснения к файлу
Этот файл robots.txt для wordpress содержит выделенную инструкцию для поисковика Яндекс. В эту часть файла добавлена специальная директива Host, которая читается только ботами Яндекс и определяет основное зеркало сайта. Двух директив Host в файле robots.txt быть не должно.
В этом примере файла robots.txt закрыто для поисковиков все содержание папок: wp-admin, wp-includes, plugins, cashe, themes, autor, category. Если не хотите закрывать от поисковиков архивы статей, авторов и категории уберите строки (директивы), которые я зачеркнул. Закрыта индексация страниц wordpress («на любителя»). Добавлены карты сайта.
Приведенный Файл robots.txt является частным и сделан для индивидуальных требований.
User-Agent: * Disallow: /wp-content/plugins/
Повторюсь и выделю, нет уникальных файлов robots.txt. Продумайте, что нужно именно вам закрыть от поисковиков или оставьте файл robots.txt для wordpress по умолчанию. Частые манипуляции с файлом robots.txt, будут лихорадить вашу выдачу в индексе поисковиков.
Полезные ссылки
- Robots для Google: https://developers.google.com/webmasters/control-crawl-index/docs/robots_txt?hl=ru
- Robots для Яндекс:
От автора: одним из файлов, которые используют поисковики при индексации вашего сайта, есть файл robots.txt. Не сложно понять из названия файла, что он используется для роботов. И действительно, этот файл позволяет указать поисковому роботу что можно индексировать на вашем сайте, а что вы не хотите видеть в поисковом индексе. Итак, давайте посмотрим, как настроить robots txt для сайта WordPress.
Статей на эту тему в сети множество. Практически в каждой из этих статей можно найти свой вариант файла robots txt, который можно взять и использовать практически без правок на своем сайте WordPress. Я не буду в очередной раз переписывать в данной статье один из таких вариантов, поскольку особого смысла в этом нет — все эти варианты вы без труда сможете найти в сети. В этой же статье мы просто разберем, как как создать robots txt для WordPress и какой минимум правил там должен быть.
Начнем с того, где должен располагаться файл robots.txt и что в него писать. Данный файл, как и файл sitemap.xml, должен быть расположен в корне вашего сайта, т.е. он должен быть доступен по адресу http://site/robots.txt
Попробуйте обратиться по такому адресу, заменив слово site адресом вашего сайта. Вы можете увидеть при этом примерно такую картину:
Хотя можете увидеть и вот такую картину:
Странная ситуация — скажете вы. Действительно, адрес один и тот же, но в первом случае файл доступен, во втором — нет. При этом если заглянуть в корень сайта, то никакого файла robots.txt вы там не обнаружите. Как так и где же находится robots.txt в WordPress?
Все дело в простой настройке — это настройка ЧПУ. Если на вашем сайте включены ЧПУ, тогда вы увидите динамически сгенерированный движком robots.txt. В противном случае будет возвращена ошибка 404.
Включим ЧПУ в меню Настройки — Постоянные ссылки, отметив настройку Название записи. Сохраним изменения — теперь файл robots.txt будет динамически генерироваться движком.
Как видно на первом рисунке, в этом файле используются некие директивы, задающие определенные правила, а именно — разрешить или запретить индексировать что-либо по заданному адресу. Как несложно догадаться, директива Disallow запрещает индексирование. В данном случае это все содержимое папки wp-admin. Ну а директива Allow разрешает индексирование. В моем случае разрешено индексирование файла admin-ajax.php из запрещенной выше папки wp-admin.
В общем, поисковикам этот файл, конечно, без надобности, даже и не представляю, из каких соображений WordPress прописал это правило. Ну да мне и не жалко, в принципе
К слову, я специально добавлял выше фразу «в моем случае «, поскольку в вашем случае содержимое robots.txt уже может отличаться. Например, может быть запрещена к индексированию папка wp-includes.
Кроме директив Disallow и Allow в robots.txt мы видим директиву User-agent, для которой в качестве значения указана звездочка. Звездочка означает, что идущий далее набор правил относится ко всем поисковикам. Также можно вместо звездочки указывать названия конкретных поисковиков. Файл robots.txt поддерживает и другие директивы. Я на них останавливаться не буду, все их с примерами можно посмотреть в консоли для веб-мастеров Гугла или Яндекса. Также можете прочесть информацию на данном сайте .
Как создать robots txt для WordPress
Итак, файл для поисковых роботов у нас есть, но вполне вероятно, что он вас не устроит в текущем виде. Как же составить свой файл. Здесь есть несколько вариантов. Начнем с первого — ручное создание файла. Создайте обычный текстовый документ в блокноте и сохраните его под именем robots с расширением txt. В этом файле запишите необходимый набор правил и просто сохраните его в корень вашего сайта WordPress, рядом с файлом конфигурации wp-config.php.
На всякий случай проверьте, что файл загрузился и доступен, обратившись к нему из браузера. Это был первый способ. Второй способ — это все та же динамическая генерация файла, только теперь это сделает плагин. Если вы используете популярный плагин All in One SEO, тогда можно воспользоваться одним из его модулей.
Правила написанные в robots.txt нужны исключительно поисковым роботам, что бы понять, какие страницы, разделы, файлы сайта посещать и индексировать, а какие нет.
У каждой поисковой системы (Google, Yandex и другие) есть роботы для мониторинга сайта, которые руководствуются алгоритмами обхода страниц сайта и индексирования. Настройки индексирования сайта и мониторинг осуществляется в Search Console у Google и Яндекс Вебмастер у Яндекса. Там же можно проверить правильность файла robots.txt, «скормить» поисковой системе карту сайта sitemap.xml, посмотреть результаты индексирования и многое другое.
Как происходит обход страниц со стороны поисковых систем я надеюсь понятно, а вот со стороны сайта файл robots.txt дает инструкции роботам поисковых систем, на какие странички переходить и индексировать, а какие нет.
Стоит также учитывать настройки дополнительного софта — плагинов, которые могут прямо влиять на индексирование сайтов, например такие популярные плагины WordPress, как All in One SEO или Yoast SEO и другие.
Настройки плагинов могут противоречить инструкциям в robots.txt, могут быть ссылки с других сайтов на запрещенную к индексированием страницу и поисковый робот будет действовать на свое усмотрение.
Это означает, что поисковая система не будут строго руководствоваться инструкциями robots.txt, например робот Google обойдет и проиндексирует все что захочет, если посчитает нужным.
Базовая настройка robots.txt
У каждой поисковой системы есть рекомендации по настройке robots.txt и желательно с ними ознакомится, Google и Яндекс .
Идея правильного формирования robots.txt заключается в том, что бы дать поисковым системам правильное представление контента сайта, так, как видят его пользователи, скрыв при этом не нужную системную информацию, страницы дубли(пагинацию), поисковые запросы со страниц сайта, данные о пользователях(если это нужно), метки, отчеты и прочее.
Я изучил документацию, прочел рекомендации многих известных блогеров, тематических форумов, туториалы плагинов и могу сделать вывод, что для свежеустановленного сайта на WordPress достаточно базовых настроек. А дальше уже каждый веб-мастер дописывает инструкции в robots.txt под нужды данного конкретного сайта, охватить все возможные случаи не возможно, главное понять «как это работает», что бы дописать robots.txt «под себя», но и при базовых настройках, сайт на WordPress будет нормально функционировать.
Структура robots.txt
Условно файл можно разделить на четыре секции.
- User-agent: к какому поисковому роботу относятся инструкции.
- Disallow: и Allow: блок правил запрещающих и разрешающих.
- Host: инструкция для Яндекса.
- Sitemap: расположение карты сайта.
Неплохой базовый вариант, который предлагает плагин Clearfy, он не лишен недостатков, но его не сложно доработать под свои нужды добавив несколько инструкций.
Пояснения по robots.txt
- User-agent: * Пояснения, какому именно поисковому роботу адресуются заданные правила. Например для Google — «User-agent: Googlebot», для Яндекса — «User-agent: Yandex» и тд. В этом случае создаются секции правил для каждого поискового робота отдельно. В нашем же случае задано «User-agent: *», и дальнейшие правила заданны для всех поисковых роботов одновременно.
- Правило Disallow: /wp-admin, Disallow: /wp-includes, Disallow: /wp-content/plugins, Disallow: /wp-content/cache, запретить обход вышеназванных каталогов. Не самый элегантный и верный способ реализации.
- Правило Disallow: /xmlrpc.php . Файл xmlrpc.php нужен для удаленного управления WordPress и индексировать его не нужно.
- Правило Disallow: /readme.html . Файл readme.html — это туториал WordPress, индексировать его не нужно.
- Правила Disallow: /*? и Disallow: /?s= закрывают страницы поисковых запросов.
- Правила Allow: /*.css и Allow: /*.js указание роботу обязательно перейти на страницы css и js. Нужно для того, что бы поисковые системы правильно формировали страницы, подключая стили и скрипты. Если этого не сделать, будут ошибки в Google Search Console.
- Правило Host: https://сайт . Указываем главное зеркало сайта. Что бы поисковая система Яндекс понимала, какая версия сайта является основной: с https или http, с www или без www.
- Правило Sitemap: https://сайт/sitemap.xml указывает роботам, где находится XML версия карты сайта. Если бы я использовал сжатую версию карты сайта, то нужно было бы дописать правило и для сжатой версии сайта Sitemap: https://сайт/sitemap.xml.gz. Если карт несколько, нужно прописать путь к каждой.
С таким robots.txt ваш WordPress сайт будет нормально индексироваться роботами поисковых систем. Но данный файл далеко не идеален, нужно его усовершенствовать.
Оптимизация robots.txt
- Disallow: /cgi-bin закрываем каталог /cgi-bin, в них обычно находятся скрипты веб-сервера, у меня они в другом месте и папка пуста, но отдадим почтение классике и блогу wp-kama.
- Disallow: /?, Disallow: *?s=, Disallow: *&s=, Disallow: /search/ закрываем поиск на сайте для индексирования.
- Disallow: /wp-, Disallow: /wp/ закрываем каталог /wp/ если он есть, и все файлы каталога wp-, ниже мы откроем для поисковых роботов только нужные файлы.
- Disallow: */feed, Disallow: */rss, Disallow: */embed закрываем rss ленты, фиды и встраивания..
- Disallow: */trackback закрываем трекбэки.
- Disallow: /author/ закрываем архивы автора и Disallow: /users/ авторов.
- Allow: /*/.js, Allow: /*/.css открываем js-скрипты и css-файлы внутри /wp- (/*/ — для приоритета).
- Добавляем правила обхода мультимедиа контента, того, что используете: Allow: /wp-*.png, Allow: /wp-*.jpg, Allow: /wp-*.jpeg, Allow: /wp-*.gif, Allow: /wp-*.svg, Allow: /wp-*.pdf, Allow: */uploads.
- Нужно добавить дополнительную секцию для Яндекса, другие поисковики не понимают директиву Host .
Оптимизированный robots.txt
User-agent: * Disallow: /cgi-bin Disallow: /? Disallow: *?s= Disallow: *&s= Disallow: /wp- Disallow: /wp/ Disallow: /search/ Disallow: /author/ Disallow: /users/ Disallow: */trackback Disallow: */feed Disallow: */rss Disallow: */embed Disallow: */wlwmanifest.xml Disallow: /xmlrpc.php Disallow: /readme.html Allow: /*/*.js Allow: /*/*.css Allow: /wp-*.png Allow: /wp-*.jpg Allow: /wp-*.jpeg Allow: /wp-*.gif Allow: */uploads Allow: /wp-admin/admin-ajax.php User-agent: Yandex Disallow: /cgi-bin Disallow: /? Disallow: *?s= Disallow: *&s= Disallow: /wp- Disallow: /wp/ Disallow: /search/ Disallow: /author/ Disallow: /users/ Disallow: */trackback Disallow: */feed Disallow: */rss Disallow: */embed Disallow: */wlwmanifest.xml Disallow: /xmlrpc.php Disallow: /readme.html Allow: /*/*.js Allow: /*/*.css Allow: /wp-*.png Allow: /wp-*.jpg Allow: /wp-*.jpeg Allow: /wp-*.gif Allow: */uploads Allow: /wp-admin/admin-ajax.php Host: ваш-сайт.com #указывайте главное зеркало сайта Sitemap: https://ваш-сайт.com/sitemap.xml # если у вас нет SSL, то http, а не https # Sitemap: https://ваш-сайт.com/sitemap.xml.gz # если у вас есть сжатая версия сайта, раскомментируйте строку вышеРезюмируя
Хотите узнать больше о robots.txt? Есть сайт посвященный этой тематике, там в нюансах и подробностях систематизирована информация, разобраны ошибки, которые часто допускают веб-мастера.
Не забывайте о мануалах поисковых систем, ссылки в начале статьи. А также о проверке robots.txt и карты сайта в консолях поисковых систем.