Баг с permalinks и canonical
-
Не нашел, куда кинуть баг, но он достаточно серьезный с точки зрения поисковых систем.
Итак, берем, например,
вот этот блог
и добавляем в ссылку числа, например, так
вот этот блог в кривом виде
как видим, WordPress считает, что это две разные статьи. Более того, эти ссылки появляются в canonical (в блоге примера я, наверное, сейчас сделаю какой-нибудь костыль). Ошибка повторяется и на блогах wordpress.com, если добавлять буквы, то работает нормально.
В итоге получаем ворох ссылок с одной статьей. Очень плохо 🙁
-
Сделал временное решение с правкой canonical.
этому багу сто лет в обед.
исправить можно с помощью плагина After Last Page Fix.как видим, WordPress считает, что это две разные статьи. Более того, эти ссылки появляются в canonical
1. ВП так не считает. См п2.
2. Если не ломать каноникал, то он указывает на правильную страницу.Это не баг, а «особенность». Такие ссылки сами по себе рождаться не могут, а дефолтнно рабочий каноникал призван как раз показать ПСам где правильная страница.
ЗЫ. Хотя лично я считаю каноникал костылём в данном случае. Лучше уж редирект.исправить можно с помощью плагина After Last Page Fix.
Хорошо бы давать ссылку не только на свой сайт, но и на оригинал (если нет в репо): http://blog.portal.kharkov.ua/2014/06/13/nextpage-correction/
Ошибка повторяется и на блогах wordpress.com
А вот это нежданчик. Действительно, и в каноникале неправильно. Раньше такого вроде не было. Сейчас перепроверил — это наблюдается и в 4.7. То, что сказано выше — было раньше, поэтому может быть неактуально. Однако… надо будет поразбираться плотнее.
мне кажется, что вы не понимаете в чем проблема.
баг существует только один — это открытие страницы с урлом /post/цифры/ даже если ее не существует. а вот каноникл прописывается абсолютно и совершенно правильно — для каждой под-страницы свой собственный каноникл. как раз баг раньше заключался в том, что для под-страниц движок указывал каноникл главной страницы.а вот каноникл прописывается абсолютно и совершенно правильно — для каждой под-страницы свой собственный каноникл.
Раньше для
/post/цифры/
каноникал указывал на/post/
. В 4.7 (а может и чуть раньше) уже указывает на/post/цифры/
. Я говорю про дефолтное поведение. Оно изменилось. И это уже неожиданная неприятность.И я не говорю правильно это или нет — куда должен показывать каноникал (правильно будет 404 или 301). Я говорю что это такая особенность.
В общем же, раз уж так исторически сложилось, то ТАКАЯ смена поведения каноникала не есть хорошо и правильно. Но неправильно — только из-за истории ВП.
Раньше для /post/цифры/ каноникал указывал на /post/. В 4.7 (а может и чуть раньше) уже указывает на /post/цифры/. Я говорю про дефолтное поведение. Оно изменилось. И это уже неожиданная неприятность.
как минимум в 4.5 было также.
дальше проверять не стал.из двух багов они поправили один — с канониклом, а на второй забили.
хотя безграничную генерацию страниц на главной и в рубриках они уже пару лет как поправили. а под-страницам пользуется слишком мало людей, поэтому никому там неинтересно этот баг исправлять.- Ответ изменён 7 лет, 11 месяцев назад пользователем Flector.
как минимум в 4.5 было также.
как?
из двух багов они поправили один — с канониклом, а на второй забили.
Каких багов? Что поправили?
Я что-то вообще не понимаю…Как по мне — поломали нормальное. устоявшееся поведение.
«Поправить баг» если уж на то пошло — это вместо подставок разных костылей с каноникалом сделать 404 или 301 на «цифры в конце адреса». Каноникал как раньше работал — в нек. роде и был заменой 301. А теперь… теперь и СЕО плагины будут в шоке (я только что поигрался с AiOS).Каких багов? Что поправили?
Я что-то вообще не понимаю…было 2 бага. первый — для под-страниц указывался каноникл главной страницы. что делало использование
<!—nextpage—>
бесполезным (так как под-страницы из-за каноникла не индексировались). и второй баг — когда движок отдает последнюю под-страницу при запросе любой цифры после урла записи аляpost/number/
.так вот первый баг они исправили — и теперь у под-страниц свой собственный каноникл. но второй баг не исправили и отсюда проблемы, которые описал ТС. и без плагина Юрия тут не обойтись.
первый — для под-страниц указывался каноникл главной страницы. что делало использование
<!—nextpage—>
бесполезнымСогласен. Но это мало того, что ограничивалось использованием
nextpage
, но решалось СЕО плагинами. Так что проблема… ну не такая глобальная, что ли..
(хотя я именно поэтому и не рекомендовал использовать nextpage)но второй баг не исправили и отсюда проблемы,
Второй баг не был багом — каноникал работал правильно (хотя повторюсь: правильно — это 301 или 404). Но стал действительно багом, усугубился с версии 4,4 (Сергей подсказал когда это началось 😉 ). Если до этого в каноникал не лезли цифры, то с 4,4 полезли.
Это всё вне зависимости от наличияnextpage
. Т.е. сейчас это актуально абсолютно для всех сайтов.Сейчас это можно решить СЕО плагинам, но тоже не всё гладко, как я пока вижу, экспериментируя с ними.
первый баг они исправили — и теперь у под-страниц свой собственный каноникл.
Всё верно, исправлено в 4.4.
но второй баг не исправили и отсюда проблемы, которые описал ТС.
ЗЫ. Хотя лично я считаю каноникал костылём в данном случае. Лучше уж редирект.
Да, с несуществующих подстраниц должен быть редирект (тоже с версии 4.4). Проблема в том, что текущее исправление неполное — редирект срабатывает, только если в тексте записи есть хотя бы один тег
<!--nextpage-->
.Второй баг не был багом
ну почему не баг то? самый натуральный баг. не должен движок отдавать код 200 при запросе несуществующей страницы. тоже самое было с главной и рубриками, когда site.ru/page/number/ отдавал код 200, хотя страницы могло не существовать. и судя по форуму и своему собственному опыту, в индекс подобные пустые страницы залетали на ура (достаточно было сменить в настройках сайта вывод числа записей на большее количество — образовывались лишние пустые страницы). вот последнее разработчики исправили, теперь там отдается 404 ошибка, а на под-страницы они забили — более того, вообще выпилили из редактору кнопочку
nextpage
, чтобы этим функционалом пользовались только те, кто о нем знает и никто больше.сейчас, конечно, для подобных целей используют что-то вроде «серии записей». но, тем не менее, баг с под-страницами остался — при желании можно любого сайту нагенерить миллион индексируемых страниц с одинаковых контентом.
Да, с несуществующих подстраниц
Я на всякий случай хочу обратить внимание, что проблема отсутствия редиректов и дописывания цифр в каноникал актуальна и для записей (post).
ну почему не баг то? самый натуральный баг. не должен движок отдавать код 200
Фухх… 🙂 Всё верно, должен не 200, а 404. С этой точки зрения — поведение неправильное, баг. НО!! 301 в данном случае будет лучше и логичней, не так ли? Так что, это будет баг? Нет же. И вот каноникал как костыль для ПС вместо 301 такой точно «небаг», а «особенность», решающая проблему дублирования. И уж если решает — какой же это баг? Не баг 🙂
И я говорю не только за страницы, но и за записи и все прочие типы контента. Не про
nextpage
. Про адреса и что с этим связано.и рубриками,
Кстати да, и с архивными страницами тоже отдельные приключения…
ну, в общем, уже неважно — раз Сергей этим занялся, то баг исправят.
кто бы еще баг с комментами исправил..
- Тема «Баг с permalinks и canonical» закрыта для новых ответов.