Как найти и удалить дубли страниц replytocom с блога?

Приветствую вас, дорогие читатели блога. Кто из вас не слышал о дублях страниц replytocom? Если мне не изменяет память в прошлом году на каждом десятом блоге появлялась статья о том что такое дубли страниц replytocom, как они мешают продвижению и как избавиться от таких дублей путем запрета их индексации и перенаправлением поискового робота на каноническую страницу.

дубли replytocom

Внимание. Запрет на индексации страниц с переменной replytocom в файле robots.txt не поможет вам избежать дублей. Google в отличие от Яндекс полностью игнорирует данный запрет в роботсе.

Сегодня в статье я расскажу обо всех способах избавления от такой заразы как дубли страниц replytocom в WordPress, которые мне известны. Это своего рода шпаргалка для меня, возможно некоторым моим читателям тоже пригодиться. Но для начала небольшое пояснение, что это за дубли для тех, кто не в теме.

Дубли replytocom это дубликаты страниц блога на движке WordPress, которые появляются из-за древовидных комментариев.

Когда вы публикуете интересную статью на блоге, ее начинают активно комментировать, и если у вас включены древовидные комментарии, то каждый ответный комментарий генерирует дубль основной страницы.

Допустим ваша статья имеет такой URL:

http://sait.ru/stranica.html

Именно эта страница является канонической и именно она должна попасть в индекс поисковых систем. Но когда в комментариях к статье пользователи начинают нажимать кнопку «Ответить», чтобы дать ответ предыдущему комментатору, то они автоматически генерируют дубликаты страниц с такими URL-адресами:

http://sait.ru/stranica.html?replytocom=998#respond  http://sait.ru/stranica.html?replytocom=999#respond  http://sait.ru/stranica.html?replytocom=1000#respond

Внешне же страницы с дополнением ?replytocom=…. Ничем не отличаются от основной страницы. Но если страницы имеют одинаковое содержимое и разные URL адреса, они будут считаться дублями, я писал уже об этом здесь.

Поисковые системы берут подобные дубли не в основной, а в дополнительный индекс (Supplemental Index). На сленге оптимизаторов их еще называют «сопли». Если блог накопит приличное количество соплей, то это очень будет тормозить развитие блога. А он накопит со временем, поверьте. Такие страницы попросту тянут ваш блог за уши назад и не дают ему развиваться.

Как узнать есть ли на вашем блоге дубли страниц replytocom

Проверить есть ли у вас дубли replytocom достаточно просто. В поисковой строке Google наберите следующее (вместо sait.ru введите свой домен):

site:sait.ru replytocom

После этого нажмите «Поиск». В самом низу страницы выдачи есть блок со скрытыми результатами.

скрытые результаты в поиске гугл

Нажмите на ссылку «Показать скрытые результаты» и вы увидите сколько у вас дублей страниц replytocom в индексе гугла.

replytocom в гугл

Способов избавления от этой заразы оказывается немало. О них мы сейчас и поговорим.

Как избавиться от дублей страниц replytocom

1 Способ. Самый простой и эффективный способ избавиться от дублей replytocom – установить грамотный SEO плагин. Таким плагином я считаю Yoast Seo. В нем есть функция автоматического удаления переменной ?replytocom. Вы просто один раз в настройках плагина активируете удаление этой переменной и забываете, что такая проблема вообще существует в WordPress.

удаление переменной в плагине Yoast Seo

2 Способ. Устанавливаем специальный плагин для комментариев, который кнопки «ответить» будет обрабатывать скриптом и скроет злосчастные ?replytocom. Пример такого плагина — WordPress Thread Comment.

3 Способ. Просто отключаем древовидные комментарии. Отключив их вы избавитесь от будущих дублей. Но у этого способа есть минус. Во первых таким образом не удалить уже сформированные дубли ?replytocom. А во вторых, не каждому удобно давать ответы другим пользователям если отсутствует кнопка «Ответить».

отключаем древовидные комментарии

4 Способ (им я пользовался до сегодняшнего дня). Скрываем кнопку ответить в тег SPAN. Способ этот я нашел на блоге Виталия Кириллова (seo-mayak.com).

Вообще всем, кто любит ковыряться в коде, рекомендую его блог. На нем просто нереально много полезной информации и немало авторских функций и хаков по WordPress.

Для того чтобы скрыть ссылку или кнопку ответит в тег SPAN нужно сделать следующее:

1 Шаг. Открыть файл function.php и после открывающего тега

function mayak_replycom_remove( $mayak_remove ) {  $cut = "!(.*?)!si";  $insert = "\\4";  return preg_replace($cut, $insert, $mayak_remove);  }  add_filter( 'comment_reply_link', 'mayak_replycom_remove' );

Эта функция удалить переменные ?replytocom с вашего блога. Более того, кнопки «Ответить» будут обрабатываться не как ссылки. Но это еще не все, переходим ко второму шагу.

2 Шаг. Вставив функцию, мы удалили тег , вместо этого появился тег ,то есть мы удалили ссылки с кнопок ответить. И соответственно пропали стили оформления CSS. Поэтому нам нужно прописать эти стили для тега . Для этого откройте файл style.css и в самый конец вставьте вот этот код:

.comment-reply-link {  color:#5151FF; /*добавляем цвет ссылки*/  text-decoration:none; /*Убираем подчеркивание*/  cursor:pointer; /*Добавляем курсор в виде руки*/  }

Теперь ссылки «Ответить» в комментариях ни чем не будут отличаться от обычных ссылок, они будут так же работать как и прежде, но при этом они не являются ссылками в прямом смысле. При желании можете подкорректировать стили CSS под дизайн своего блога.

Ссылки ?replytocom в стандартном варианте:

ссылки replytocom в комментариях

Ссылки ?replytocom после вставки функции:

ссылки в теге span

5 Способ. Ставим на страницы с replytocom мета-тег noindex. Выглядит этот мета тег так:

Он запрещает поисковым роботам индексировать страницы. В отличие от файла robots.txt, поисковые роботы не игнорируют данное правило. Для того, чтобы вставить этот мета-тег на страницы пагинации, вставьте вот этот код в файл function.php перед открывающим тегом

remove_action( 'wp_head', 'wp_no_robots' );    function mayak_replytocom_robots() {  echo "\n";  }  if ( isset( $_GET['replytocom'] ) )  add_action( 'wp_head', 'mayak_replytocom_robots' );

6 Способ. Делаем 301 редирект со страницы дубля на каноническую страницу. Для того чтобы сделать редирект, скачайте себе на компьютер файл .htaccess который находится в корне вашего блога. В этот файл нужно вставить 2 строчки:

RewriteCond %{QUERY_STRING} replytocom=  RewriteRule ^(.*)$ /$1? [R=301,L]

Вставить можно в самое начало файла, чтобы получилось примерно так:

# BEGIN WordPress  RewriteCond %{QUERY_STRING} replytocom=  RewriteRule ^(.*)$ /$1? [R=301,L]    RewriteCond %{HTTP_HOST} nazyrov.ru  RewriteRule (.*) /$1 [R=301,L]  RewriteEngine On  RewriteBase /  RewriteRule ^index\.php$ — [L]  RewriteCond %{REQUEST_FILENAME} !-f  RewriteCond %{REQUEST_FILENAME} !-d  RewriteRule . /index.php [L]      # END WordPress

Минус данного способа, это огромное количество редиректов, что создаст немалую нагрузку на сервер. Да и поисковые системы не любят, когда на блоге слишком много редиректов.

Как удалить из индекса поисковых систем дубли ?replytocom

После того, как вы решили проблему с дублями replytocom, они сразу не исчезнут из индекса. Для этого должно пройти определенное время. В некоторых случаях процесс может затянуться до года.

Чтобы значительно ускорить процесс выкидывания replytocom из индекса поисковых систем, да и вообще после того как вы предотвратили создание будущих соплей, я рекомендую сделать так, чтобы уже проиндексированные дубли выдавали код ответа сервера 404, то есть чтобы при запросе сервер сообщал поисковому роботу, что такой страницы не существует.

Сделать это достаточно просто. Скопируйте вот этот код:

add_filter('template_redirect','RedirectReplytocom404');  function RedirectReplytocom404()  {  if ( isset( $_GET['replytocom'] ) ) {    @header("HTTP/1.0 404 Not Found");  die();  }  }

И вставьте его в файл function.php темы вашего блога. Эта функция будет перенаправлять поискового робота со страницы replytocom на страницу ошибки 404. В результате такие страницы постепенно будут вылетать из поиска.

Рейтинг автора
Автор статьи
Назыров Андрей
Основатель блога и его главный редактор.
Написано статей
105
Поделись информацией:
Помогла статья? Оцените её
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд
Оценок: 1
Загрузка...

Подписка на рассылку

Комментарии
  1. Олег

    Привет Андрей!
    Где-то два года назад о этой заразе узнал, начал бороться, через 8 месяцев из поиска все ушли дубли replytocom, после этого гугл полюбил и снял санкции ))
    В своё время изучал эту тему тоже очень серьёзно.

    • Андрей Назыров

      Привет, Олег. А какой способ использовал для закрытия дублей?

      • Олег

        Одновременно способ 1, 3 и 6 и ещё что-то уже не помню, нужно вспоминать, т.к. помню ещё прописывал в коде. Вообщем гибрид брал ото всюду понемногу, так и оставил, больше ничего не менял с тех пор.

      • Андрей Назыров

        Ну, главное, что все работает 🙂

  2. Сергей

    Хорошая статья, грамотно описано. Недавно тоже занимался удалением ссылки replytocom, но у меня наверное и нет этих дублей, так как не ставил древовидные комментарии, пока не решил эту проблему

    • Андрей Назыров

      Сергей, вы правы. У вас нет этих дублей.

  3. bytrina

    Вот и еще несколько отличных советов, на любой вкус, спасибо думаю многим в помощь будет.

  4. Наталья Краснова

    В статье информация, которую должен знать каждый блогер! Спасибо за шпаргалку, при случае воспользуемся.

  5. Егор

    Недавно избавился от replytcom в комментариях, теперь спокойнее за свой блог) Хотя и не было дублей в индексе

  6. Ольга

    Я тоже узнала где то 1 год назад про дубли. Но до сих пор с гугла не большая посещаемость.

    • Андрей Назыров

      Ну, по статистике с Гугла всегда посещаемость меньше чем с Яндекс 🙂

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