В Інтернеті можна знайти багато публікацій на тему, як створити найкращий (або навіть самий найкращий) файл robots.txt для WordPress. При цьому в ряді таких популярних статей багато правил не пояснюються і, як мені здається, наврядчи розуміються самими авторами. Зрозуміло, що на кожному сайті будуть свої нюанси у складі файлу robots.txt. Но існує ряд загальних моментів для абсолютно різних сайтів, які можна взяти за основу. Robots.txt, опублікований у цій статті, можна буде просто скопіювати та поставити на новий сайт і далі доробляти відповідно до ваших нюансів.
Правильний Robots.txt для WordPress
Ниже наведемо короткий і розширений варіант найкращого файлу robots.txt для
сайту на CMS WordPress. Короткий не включає окремі блоки для Google і Яндекса.
Розширений вже менше актуален, тепер немає принципових особливостей між двома
великими пошуковиками: будь-якій системі потрібно індексувати файли скриптів
та зображень, не підтримують директиву Host. Тем не менше, якщо в цьому світі
знову щось зміниться, або вам потрібно, все-таки, якась окрема індексація
файлів на сайті під Яндекс і Гугл, зберігаємо ц цій статті і другий
варіант.
Ще раз звертаю увагу, що це базовий файл robots.txt для WordPress. У кожному
конкретному випадку потрібно переглядати реальний сайт і за необхідності
вносити корекцію.
Короткий варіант (оптимальний)
User-agent: * # загальні правила для роботов, крім Яндекса та
Google
Disallow: /cgi-bin # папка на хостингу
Disallow: /? # всі параметри запиту на головну
Disallow: /wp- # всі файли WP: /wp-json/, /wp-includes,
/wp-content/plugins
Disallow: /wp/ # якщо є підкаталог /wp/, де встановлена CMS правило
можна видалити
Disallow: *?s= # пошук
Disallow: *&s= # пошук
Disallow: /search/ # пошук
Disallow: /author/ # архів автора
Disallow: /users/ # архив авторов
Disallow: */trackback # трекбеки, відомості в коментарях про появу
відкритого посилання на статтю.
Disallow: */feed # все фіди
Disallow: */rss # rss фід
Disallow: */embed # всі вбудовувані елементи
Disallow: */wlwmanifest.xml # xml-файл маніфесту Windows Live Writer
(якщо не використовуєте правило можна видалити)
Disallow: /xmlrpc.php # файл WordPress API
Disallow: *utm*= # посилання з utm-метками
Disallow: *openstat= # помилання з мітками openstat
Allow: */uploads # відкриваємо папку з файлами uploads
sitemap: http://site.com/sitemap.xml
sitemap: http://site.com/sitemap.xml.gz
Розширений варіант (віддільні правила для Google і Яндекса)
User-agent: * # загальні правила для роботів, крім Яндекса та Google,
Disallow: /cgi-bin # папка на хостингу
Disallow: /? # всі параметри запиту на головній
Disallow: /wp- # всі файли WP: /wp-json/, /wp-includes,
/wp-content/plugins
Disallow: /wp/ # якщо є підкаталог /wp/, де встановлено CMS (якщо ні,
правило можна видалити)
Disallow: *?s= # пошук
Disallow: *&s= # пошук
Disallow: /search/ # пошук
Disallow: /author/ # архів автора
Disallow: /users/ # архів авторів
Disallow: */trackback # трекбеки, повідомлення у коментарях про появу
відкритого посилання на статтю
Disallow: */feed # всі фіди
Disallow: */rss # rss фід
Disallow: */embed # всі вбудовування
Disallow: */wlwmanifest.xml # xml-файл маніфесту Windows Live Writer
(якщо не використовуєте, правило можна видалити)
Disallow: /xmlrpc.php # файл WordPress API
Disallow: *utm*= # посилання з utm-мітками
Disallow: *openstat= # посилання з позначками openstat
Allow: */uploads # відкриваємо папку з файлами uploads
User-agent: GoogleBot # правила для Google
Disallow: /cgi-bin
Disallow: /?
Disallow: /wp-
Disallow: /wp/
Disallow: *?s=
Disallow: *&s=
Disallow: /search/
Disallow: /author/
Disallow: /users/
Disallow: */trackback
Disallow: */feed
Disallow: */rss
Disallow: */embed
Disallow: */wlwmanifest.xml
Disallow: /xmlrpc.php
Disallow: *utm*=
Disallow: *openstat=
Allow: */uploads
Allow: /*/*.js # відкриваємо js-скрипти всередині /wp- (/*/ - для
пріоритету)
Allow: /*/*.css # відкриваємо css-файли всередині /wp- (/*/ - для
пріоритету)
Allow: /wp-*.png # картинки в плагінах, cache папці і т.д.
Allow: /wp-*.jpg # картинки в плагінах, cache папці і т.д.
Allow: /wp-*.jpeg # картинки в плагінах, cache папці і т.д.
Allow: /wp-*.gif # картинки в плагінах, cache папці і т.д.
Allow: /wp-admin/admin-ajax.php # використовується плагінами, щоб не
блокувати JS та CSS
User-agent: Yandex # правила для Яндекса
Disallow: /cgi-bin
Disallow: /?
Disallow: /wp-
Disallow: /wp/
Disallow: *?s=
Disallow: *&s=
Disallow: /search/
Disallow: /author/
Disallow: /users/
Disallow: */trackback
Disallow: */feed
Disallow: */rss
Disallow: */embed
Disallow: */wlwmanifest.xml
Disallow: /xmlrpc.php
Allow: */uploads
Allow: /*/*.js
Allow: /*/*.css
Allow: /wp-*.png
Allow: /wp-*.jpg
Allow: /wp-*.jpeg
Allow: /wp-*.gif
Allow: /wp-admin/admin-ajax.php
Clean-Param: utm_source&utm_medium&utm_campaign #Яндекс
рекомендує не закривати від індексування, а видаляти параметри міток, Google
такі правила не підтримує
Clean-Param: openstat # аналогічно
Вкажіть один або кілька файлів Sitemap (дублювати для кожного User-agent не
потрібно). Google XML Sitemap створює дві карти сайту, як у прикладі нижче.
Sitemap: http://site.com/sitemap.xml
Sitemap: http://site.com/sitemap.xml.gz
Помилкові рекомендації для Robots.txt на WordPress
- Використовувати правила тільки для User-agent: *. Для багатьох пошукових систем не потрібна індексація JS і CSS для покращення ранжування, крім того, для менш значущих роботів можна налаштувати більше значення Crawl-Delay і знизити за їх рахунок навантаження на ваш сайт.
- Прописування Карти сайту після кожного User-agent. Це робити непотрібно. Одна карта сайту повинна бути вказана в будь-якому місці файлу robots.txt.
- Закрити папки wp-content, wp-includes, cache, плагіни, теми. Це застаріла вимоги. Для Яндекса і Google краще їх взагалі не закривати. Або закривати «по розумному», як це описано вище.
- Закривати сторінки тегів і категорій. Якщо ваш сайт дійсно має таку структуру, що на цих сторінках контент дублюється і в них немає особливої цінності, це краще закрити. Нерідко просування сайту здійснюється за рахунок сторінок категорій і тегування. В цьому випадку можна втратити частину трафіку.
- Закривати від індексації сторінки пагінації /page/. Цього робити не потрібно. Для таких сторінок створюється тег rel=»canonical».
- Прописати Crawl-Delay. Це правило потрібно вказувати тільки тоді, коли дійсно є необхідність обмежити відвідування роботом вашого сайту. Якщо сайт має не багато відвідувань (трафіку) і цей трафік не створює велике навантаженя на сервер, то цього не варто робити.
Спірні рекомендації для Robots.txt на WordPress
- Комментарі
Дехто радить закривати від індексування коментарів
Disallow: /comments
Disallow: */comment-*
- Відкрити папку завантажень тільки для Googlebot-Image і YandexImages
User-agent: Googlebot-Image
Allow: /wp-content/uploads/
User-agent: YandexImages
Allow: /wp-content/uploads/
Порада досить таки сумнівна, так як для ранжування сторінки необхідна
інформація про том які зображення та файли розміщені на ній.