Платформа для привлечения клиентов из интернета

Осторожно! WordPress создает много дублей!

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

Напугал? Не переживайте =) . Баг, действительно, серьезный, но исправить его можно достаточно просто. Ниже я расскажу, что это за зверь и как от него избавиться.

wordpress создает дубли

В связи с недавними баден-баденовскими событиями начал плотно изучать информацию в Яндекс.Вебмастере. Анализировал сводку по индексированию ("Страницы в поиске"). Искал связь между пометками "Некачественная страница" и наложением фильтра за переоптимизацию.

пример некачественного документа

И вот, зайдя в статистику для блога, был неприятно шокирован — сотни дублей несуществующих документов.

дубли страниц

идентичные документы

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

На таких страницах нет мета-тега robots и есть canonical, который в качестве канонического документа указывает именно дубль.

canonical

Проверьте, у вас также?

Усугубляет ситуацию связь с плагином All in one SEO pack, который дополнительно дает ссылку на предыдущую запись: поисковый робот не только заходит, по сути, на несуществующую страницу, но и начинает ходить по другим таким же. Добавлялось и удалялось сотни подобных "постов".

добавлено/удалено

Я начал копать глубже и создал топик на wordpress.org. Оказалось, что еще в 2014 был баг при создании многостраничных постов с помощью тега <!--nextpage-->. Тогда также создавались несуществующие документы, но canonical для 2-й, 3-й или последующих страниц, наоборот, указывали всегда на первую, то есть не индексировались.

Начиная с WordPress 4.4 баг с canonical убрали (у каждой "пагинированной" страницы поста появился свой каноникал), а вот ошибку с созданием несуществующих документов не убрали. Поэтому сейчас индексируется больше, чем нужно :smile:.

Что делать и как убрать дубли?

Сперва, хочу сказать, что в одной из ближайших версий вордпресса этот баг постараются исправить.

ошибку уберут в вордпресс 4.8

Пока же нам придется убирать его, так называемыми, "костылями" :smile:. Существует 2 варианта.

1) Плагин After Last Page Fix от Белотицкого Юрия. Скачать можно здесь. Установка в один клик, настроек нет. Скрипт вместо создания множества дублированных документов отдает 404-ошибку. На мой взгляд, самый удачный вариант. Недостатки:

  • плагин добавляет дубль rel="canonical";
  • и shortlink.

2) Дополнительная настройка All in One SEO Pack. Разработчики этого плагина, скорее всего, оказались в курсе данного бага и в новых версиях появились дополнительные чекбоксы.

noindex и nofollow для постов с пагинацией

Несуществующие записи будут создаваться, но в них будет указан мета-тег robots, запрещающий их индексирование.

meta name=robots noindex и nofollow

В других SEO-плагинах для wordpress не смотрел. Вероятно, в Yoast SEO или подобных будут такие же настройки. UPD. Да, действительно, в плагине от Yoast прописывается каноникал на основную запись.

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

Получается, что, обновляясь на новую версию wordpress, не только устраняешь старые ошибки CMS, но можешь и получить новые. Интересно, какая у вас версия движка и создаются ли такие несуществующие посты? Поделитесь статистикой в комментариях ;-).

Рейтинг
1 звезда2 звезды3 звезды4 звезды5 звезд (10 голос., в среднем: 4,70 из 5)
Загрузка...
Отзывов уже 40:
Написать комментарий
  1. 1. Marian marianpopovych.com

    Баг присутствует (WP 4.7.3), но в SEO Yoast каноникал по умолчанию указывает на корректный урл.

  2. 2. Имя

    Проверил на своем сайте, при добавлении цифр, действительно получается страница, но тег canonical ссылается на страницу без цифр. Плагин Yoast, в настройки пока не лазил, полагаю, что и так сойдет.

  3. 3. Sosnovskij sosnovskij.ru

    Marian, Имя, подтверждаю, Yoast SEO ставит корректный каноникал.

  4. 4. Дмитрий

    Sosnovskij, то стоит что-то менять?

  5. 5. Sosnovskij sosnovskij.ru

    Дмитрий, не понял Ваш вопрос :)

  6. 6. Алексей

    Вы что, серьёзно? Проблеме сто лет в обед.
    Код для htaccess
    # 301 for canonical /2/
    RewriteCond %{REQUEST_URI} !(/page*)
    RewriteRule (.*)\/([0-9]+/)$ /$1/ [R=301,L]

    # 301 for canonical /page/
    RewriteCond %{REQUEST_URI} !(/category*)
    RewriteRule (.*)page\/([0-9]+/)$ /$1 [R=301,L]

  7. 7. Kanapiya www.kanapiya.ru

    А как найти эти страницы у себя на сайте?

  8. 8. Sosnovskij sosnovskij.ru

    Алексей, если внимательно прочитать пост, то я написал, что проблема еще с 2014 года. Она была другого рода. Она выявлялась, когда почему-то многостраничные посты не индексировались. Так как записи практически никто не разбивал, то и проблемы как таковой не было (документы /213213/ создавались, но имели canonical на основной пост).

    С 4.4 (не так уж и давно) стали не только создаваться, но и индексироваться подобные страницы, которые, на самом деле, не существует. Это более серьезно.

    Kanapiya, добавьте к URL записи любую цифру и закройте слэш. Проиндексированные такие документы можно поискать в Яндекс.Вебмастер. Но лучше просто их закрыть от индексации (canonical на основной пост, noindex), отдавать 404 ошибку или настроить 301-редирект.

  9. 9. Алексей

    Sosnovskij,
    не, именно эта проблема в 15 или 16-м году муссировалась

  10. 10. Sosnovskij sosnovskij.ru

    Алексей, 4.4 вышел в декабре 2015. Мне такая информация, к сожалению, не попадалась. Пока сам с проблемой не столкнулся, не узнал. Полагаю, что еще очень многие не сталкивались с багом.

  11. 11. seoonly seoonly.ru

    подожду обнову)) спасибо.

  12. 12. jkeks jkeks.ru

    А у меня другая проблема, в индекс залезали comment-pages-.. И основные вылетали из индекса почему-то. Пока в роботе не прописал костыль, творилась такая фигня. Но самое тупое в этой истории то, что как только прописал робота и дубли commant-pages стали вылетать, на сайте стал падать трафик. Так что тут какая-то каша происходит с Яндексом и WordPress. Делаешь как можно лучше, а оно хуже и хуже.

  13. 13. Павел

    Сергей спасибо! Месяц назад установил вордпресс на новый сайт, дней через пять проверил через Xenu на исходящие, так вот там столько оказалось дублей! С предыдущими версиями таких проблем не замечал….

  14. 14. Наталья

    А если у меня в статье уже стоит тег canonical, нужно ли еще в СЕО-плагине ставить галочку «Canonical URLs:»?

  15. 15. Sosnovskij sosnovskij.ru

    Наталья, если везде стоят корректные каноникал, то тогда ставить не обязательно.

  16. 16. Дмитрий ktonanovenkogo.ru

    Привет, Сергей!

    Поддержу некоторых комментаторов по поводу недоумения по новым мотивам этой проблемы. Вроде она именно в данном плагине и кроется и его же настройками решается.

    Мне она на глаза в 2015 попалась (ktonanovenkogo.ru/wordpress/wordpress_osnovi/problema-all-in-one-seo-pack-ubiraem-relprev-relcanonical-ubrat-indeksa-dubli.html). Сделанные тогда настойки и сейчас вроде все правильно отрабатывают — правильный каноникал и корректный запрет на индексацию в мета-теге роботс.

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

  17. 17. Александр seosprint25.ru

    Спасибо за информацию. У меня блоге тоже стоит All in One SEO Pack, первый пункт у меня был отмечен, а второй не был. Сейчас вот изменил настройки, посмотрим какие будут изменения.

  18. 18. Надежда

    Прочитав статью, пошла в Вебмастер и обнаружила, что AMP-страницы там помечены как неканонические.
    Сергей, это надо как-то исправлять или в угоду Яндексу лучше их совсем отключить? Правда, Гугл для сайта тоже имеет значение.

  19. 19. Наталья Краснова sovet-podarok.ru

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

  20. 20. Nobody0 www.seoups.com

    Будьте внимательны с предлагаемым вами плагином!!!

    Он добавляет шортлинк (Зачем?) и каноникал принудительно, если стоит сео плагин то их становиться по 2.

    Одни дубли убирает — другие создает, чтоб не обидно было =)

  21. 21. Sosnovskij sosnovskij.ru

    Дмитрий, привет! Не говорил, что новая проблема в принципе. Новая для меня и тех, кто не замечал ее :) Да, это именно wordpress генерирует такие страницы. Они попадают в индексе, то удаляются из него. Это не хорошо.
    Надежда, все правильно. Им каноническими быть нельзя, так как они являются дублями :)
    Nobody0, посмотрел. Действительно, есть такое. На мой взгляд, менее критично, но, да, недоработка (или переработка). Добавил информацию в пост.

  22. 22. Ольга fitdeal.ru

    Получается, если у меня не стоит плагин All in One SEO Pack, я должна поставить для решения проблемы плагин After Last Page Fix? А к чему приводят его недостатки ( дубль rel=canonical и shortlink)?

  23. 23. Sosnovskij sosnovskij.ru

    Ольга, сначала убедитесь, что такие страницы создаются и открыты для индексации. Если да, то ставьте плагин. Небольшой минус будет в создании шортлинка. На мой взгляд, это совсем не страшно. По переходу на него стоит редирект на основную запись. Раньше в вордпресс shotlink стоял по-умолчанию.

  24. 24. Ignab ignab.com

    У меня все в порядке, пока дублей не обнаружил (хотя и сайт молодой), стоит yoast. Заметил опечаточку: «Добавлялось и удалось сотни подобных «постов».»

  25. 25. Sosnovskij sosnovskij.ru

    Ignab, спасибо, поправил :)

  26. 26. Ольга fitdeal.ru

    Sosnovskij, подскажите, как понять, открыты ли они для индексации? Какая должна быть строчка в robots, которая их закрывает?

  27. 27. Светлана

    Не поняла. «Постраничная навигация отдельных постов» — это про многостраничные посты речь? Что правда, у кого то есть такие? Ну тогда писатели, ну тогда глыбы! )))

    У меня сейчас свежий WordPress 4.7.4 плюс SEO by Yoas — никаких дублей в никаких ПС нет.

  28. 28. Sosnovskij sosnovskij.ru

    Светлана, да, только эти многостраничные посты, а точнее сами страницы навигации, создаются автоматически.

  29. 29. В Клике от Тебя

    Баг уже исправлен, ни разу не сталкивался

  30. 30. Ольга

    А можно по подробнее про дубли с шортлинками, у меня они в поиске не мелькают, но сам факт существования дублированых статей, которые вордпресс( обновленный) создает путем добавления номера поста к адресу главной через /p?=номер. Еще заметила, что некоторые сайты-копипастеры ссылаются на такие страницы.

  31. 31. Sosnovskij

    Ольга, дубли в коде, на сайте их нет, так как с них стоит редирект на основной материал.

  32. 32. Олег Пхукетов

    4.9.2 — баг НЕ ИСПРАВЛЕН!!! приходится хардкодить
    имею ввиду несуществующие страницы типа /page/88888
    Тут выше указывали про смешное решение через каноникалы!!)) хахаха. пожалейте свой сервер! если конкуренты пронюхают. то вам насоздают миллиард страниц. Сервер усрется от Яшиных ботов… Такие страницы надо искоренять кардинально, только ответ 404!

  33. 33. Sosnovskij

    Олег Пхукетов, не знаю почему не могут его исправить. Ошибка серьезная, а исправление не займет много времени.

  34. 34. Сергей

    А не подскажите, откуда могут браться дубли такого типа
    site.ru/?url=https%3A%2F%2Fsite.ru%2Fnazvanie-stranicy%2F

  35. 35. Sosnovskij

    Сергей, к сожалению, не подскажу.

  36. 36. Сергей

    Sosnovskij,
    У Вас кстати тоже есть такие ссылки
    sosnovskij.ru/?url=https%3A%2F%2https://sosnovskij.ru%2Fwordpress-sozdaet-dubli%2F

  37. 37. Sosnovskij

    Сергей, на примере стоит rel=»canonical» на главную страницу блога.

  38. 38. Сергей

    Sosnovskij,
    Получается, если rel=»canonical» указан на главную страницу, то это никак не навредит сайту в плане SEO?

  39. 39. Sosnovskij

    Сергей, если поисковые системы правильно отработают тег, то да — ничего страшного :)

  40. 40. Nikolay

    Ключевое слово если.
    Спасибо, помогло решить вопрос с дублями страниц. Благо у вас тут описано как сделать 404 с помощью плагина или в комментариях предложили 301 с помощью .htaccess.
    Второй вариант мне показался предпочтительней. А тег каноникал не очень понравился, поисковики могут сами выбрать канонический урл -«Страница является копией. Канонические версии страницы, выбранные Google и пользователем, не совпадают.»

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

* Нажимая на кнопку "Добавить комментарий" я соглашаюсь с Политикой конфиденциальности.

css.php