robots.txt для WordPress — рабочий пример файла

robots.txt для WordPress — рабочий пример файла

Провел SEO-аудит сайта при помощи labrika.ru. Оказалось что много технических ошибок. Важно этот файл готовить правильно 🙂 Пришлось колдовать с файлом robots txt. Готового плагина для этих целей у меня нет. Потому решил задачу программно.

Задачи для настройки robots.txt

  • закрыть все страницы пагинации
  • попало много страниц типа ?products-per-page= — закрыл
  • закрыть страницы переадресации типа /gurl/ (это специфика только моего сайта, и больше нигде не нужно)

Результат https://wpcraft.ru/robots.txt

Пример кода для WordPress

  • Важно заменить url в параметре Sitemap с учетом вашего сайта
  • Строку с gurl можно не копировать, тк это нужно только для моего сайта
  • Можно дополнять с учетом особенностей вашего сайта
add_filter('robots_txt', function($output){
    $lines = [
        'User-agent: *',
        'Allow: /wp-admin/admin-ajax.php',
        'Disallow: /wp-admin/',
        'Disallow: /author/',
        'Disallow: */comments',
        'Disallow: */page/',
        'Disallow: */embed',
        'Disallow: *?s=',
        'Disallow: *products-per-page=',
        'Disallow: */gurl/',
        'Disallow: /trackback',
        '',
        'Sitemap: https://wpcraft.ru/sitemap.xml',
    ];

    ob_start();
    echo implode( "\r\n", $lines );
    $output = ob_get_clean();

    return $output;
}, 999);

Где находится robots.txt в WordPress?

Такого файла нет. Он генерируется автоматически и потому лучше использовать указанный код выше.

Код можно вставить в functions.php темы WordPress или в папку wp-content/mu-plugins/ как файл robots.php.

У этой записи 4 комментариев

  1. Зачем делать это программно?

    1. в тех плагинах что есть такой опции не было.
      плагин который это делает хорошо — мне не знаком.
      искать — дольше чем писать свой код.
      вот и написал.

  2. Почему не вписать сразу вместо домена сайта значение HTTP_HOST из массива $_SERVER?

    1. А почему его надо писать?

      Это опциональность и универсальность. А значит усложнение. Любое усложнение должно иметь веские причины.
      Я тут не увидел веских причин усложнять код. Код решает конкретную задачу. Так он проще для чтения, понимания и написания.

Добавить комментарий

Закрыть меню
×

Корзина