Правильна настройка файлу robots.txt для WordPress

  1. Навіщо потрібен robots.txt
  2. Базова настройка robots.txt
  3. структура robots.txt
  4. рекомендації Clearfy
  5. Пояснення по robots.txt
  6. оптимізація robots.txt

Навіщо потрібен robots.txt

Правила написані в robots.txt потрібні виключно пошуковим роботам, що б зрозуміти, які сторінки, розділи, файли сайту відвідувати і індексувати, а які ні.

У кожної пошукової системи (Google, Yandex та інші) є роботи для моніторингу сайту, які керуються алгоритмами обходу сторінок сайту і індексування. Налаштування індексування сайту і моніторинг здійснюється в Search Console у Google і Яндекс Вебмайстер у Яндекса. Там же можна перевірити правильність файлу robots.txt, «згодувати» пошуковій системі карту сайту sitemap.xml, подивитися результати індексування і багато іншого.

Як відбувається обхід сторінок з боку пошукових систем я сподіваюся зрозуміло, а ось з боку сайту файл robots.txt дає інструкції роботам пошукових систем, на які сторінки переходити і індексувати, а які ні.

Суть роботи robots.txt

Варто також враховувати налаштування додаткового софта - плагінів, які можуть прямо впливати на індексування сайтів, наприклад такі популярні плагіни WordPress, як All in One SEO або Yoast SEO та інші.

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

Це означає, що пошукова система не будуть строго керуватися інструкціями robots.txt, наприклад робот Google обійде і проиндексирует все що захоче, якщо вважатиме за потрібне.

Google індексує заборонену в robots.txt запис

Базова настройка robots.txt

У кожної пошукової системи є рекомендації по налаштуванню robots.txt і бажано з ними ознайомиться, Google і Яндекс .

Ідея правильного формування robots.txt полягає в тому, що б дати пошуковим системам правильне уявлення контенту сайту, так, як бачать його користувачі, приховавши при цьому не потрібну системну інформацію, сторінки дублі (пагінацію), пошукові запити зі сторінок сайту, дані про користувачів (якщо це потрібно), мітки, звіти та інше.

Я вивчив документацію, прочитав рекомендації багатьох відомих блогерів, тематичних форумів, туторіали плагінів і можу зробити висновок, що для свіжовстановленому сайту на WordPress досить базових налаштувань. А далі вже кожен веб-майстер дописує інструкції в robots.txt під потреби даного конкретного сайту, охопити всі можливі випадки не можливо, головне зрозуміти «як це працює», що б дописати robots.txt «під себе», а й при базових настройках , сайт на WordPress буде нормально функціонувати.

структура robots.txt

Умовно файл можна розділити на чотири секції.

  1. User-agent: до якого пошуковому роботу відносяться інструкції.
  2. Disallow: і Allow: блок правил забороняють і дозволяють.
  3. Host: інструкція для Яндекса.
  4. Sitemap: розташування карти сайту.

рекомендації Clearfy

User-agent: * Disallow: / wp-admin Disallow: / wp-includes Disallow: / wp-content / plugins Disallow: / wp-content / cache Disallow: / wp-json / Disallow: /xmlrpc.php Disallow: / readme .html Disallow: / *? Disallow: /? S = Allow: /*.css Allow: /*.js Host: https://sergei-loginov.com Sitemap: https://sergei-loginov.com/sitemap.xml

Непоганий базовий варіант, який пропонує плагін Clearfy, він не позбавлений недоліків, але його не складно доопрацювати під свої потреби додавши кілька інструкцій.

Пояснення по robots.txt

  1. User-agent: * Пояснення, якого саме пошуковому роботу адресуються задані правила. Наприклад для Google - «User-agent: Googlebot», для Яндекса - «User-agent: Yandex» і тд. У цьому випадку створюються секції правил для кожного пошукового робота окремо. У нашому ж випадку задано «User-agent: *», і подальші правила задані для всіх пошукових роботів одночасно.
  2. Правило Disallow: / wp-admin, Disallow: / wp-includes, Disallow: / wp-content / plugins, Disallow: / wp-content / cache, для запобігання обходу вищеназваних каталогів. Не самий елегантний і вірний спосіб реалізації.
  3. Правило Disallow: /xmlrpc.php. Файл xmlrpc.php потрібен для віддаленого управління WordPress і індексувати його не потрібно.
  4. Правило Disallow: /readme.html. Файл readme.html - це туториал WordPress, індексувати його не потрібно.
  5. Правила Disallow: / *? і Disallow: /? s = закривають сторінки пошукових запитів.
  6. Правила Allow: /*.css і Allow: /*.js вказівку роботу обов'язково перейти на сторінки css і js. Потрібно для того, що б пошукові системи правильно формували сторінки, підключаючи стилі і скрипти. Якщо цього не зробити, будуть помилки в Google Search Console.
  7. Правило Host: https://sergei-loginov.com. Вказуємо головне дзеркало сайту. Що б пошукова система Яндекс розуміла, яка версія сайту є основною: з https або http, з www або без www.
  8. Правило Sitemap: https://sergei-loginov.com/sitemap.xml вказує роботам, де знаходиться XML версія карти сайту. Якби я використовував стислу версію карти сайту, то потрібно було б дописати правило і для стислій версії сайту Sitemap: https://sergei-loginov.com/sitemap.xml.gz. Якщо карт кілька, потрібно прописати шлях до кожної.

З таким robots.txt ваш WordPress сайт буде нормально індексуватися роботами пошукових систем. Але даний файл далеко не ідеальний, потрібно його вдосконалити.

оптимізація robots.txt

  1. Disallow: / cgi-bin закриваємо каталог / cgi-bin, в них зазвичай знаходяться скрипти веб-сервера, у мене вони в іншому місці і папка порожня, але віддамо шану класиці і блогу wp-kama.
  2. Disallow: / ?, Disallow: *? S =, Disallow: * & s =, Disallow: / search / закриваємо пошук на сайті для індексування.
  3. Disallow: / wp-, Disallow: / wp / закриваємо каталог / wp / якщо він є, і всі файли каталогу wp-, нижче ми відкриємо для пошукових роботів тільки потрібні файли.
  4. Disallow: * / feed, Disallow: * / rss, Disallow: * / embed закриваємо rss стрічки, фіди і вбудовування. Я використовую rss стрічку і згодовують Яндексу, адреса стрічки https://sergei-loginov.com/feed/turbo/, отже мені не потрібно закривати фіди.
  5. Disallow: * / trackback закриваємо трекбекі.
  6. Disallow: / author / закриваємо архіви автора і Disallow: / users / авторів.
  7. Allow: /*/.js, Allow: /*/.css відкриваємо js-скрипти і css-файли всередині / wp- (/ * / - для пріоритету).
  8. Додаємо правила обходу мультимедіа контенту, того, що використовуєте: Allow: /wp-*.png, Allow: /wp-*.jpg, Allow: /wp-*.jpeg, Allow: /wp-*.gif, Allow: / wp - *. svg, Allow: /wp-*.pdf, Allow: * / uploads.
  9. Потрібно додати додаткову секцію для Яндекса, інші пошуковики не розуміють директиву 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 і карти сайту в консолях пошукових систем.

Html Disallow: / *?
Disallow: /?
Disallow: / ?
Disallow: *?
Disallow: *?
Disallow: *?
Txt?