Канонические ссылки на всех страницах блога
Плагин проставляет корректный <link rel="canonical"> на всех страницах витрины приложения Блог: на записях, в ленте, в архиве по датам, на страницах авторов и на листингах плагинов «Категории» и «Теги». Тег на странице всегда ровно один — плагин переписывает ту же мету, которой пользуется ядро, а не добавляет вторую.
Зачем это нужно
Штатно Блог ставит канонникал только на странице записи, и то не всегда: ядро выбрасывает тег, если он совпадает с текущим адресом. Всё остальное уходит в индекс без канонникала, а любая UTM-метка в адресе создаёт для поисковика ещё одну копию страницы.
Дубли, которые создаёт плагин «Категории»
Если у бесплатного плагина «Категории» включена настройка «Include /Frontend_URL/ into blog post URLs», он регистрирует адрес записи в каждой её категории. Запись с тремя категориями открывается по четырём разным адресам с одинаковым содержимым. Это структурный дубль, который создаёт сам Вебасист, и закрыть его без канонникалов нечем. Плагин отдаёт на всех таких адресах канонникал на основной адрес записи.
Что покрывается
- записи — канонникал на основной адрес;
- записи, открытые по категорийному адресу — тоже на основной;
- лента блога, архив по датам, страницы авторов;
- листинги категорий и тегов;
- пагинация на любом листинге;
- любые адреса с UTM-метками и прочими служебными параметрами.
Настройки
- Типы страниц — где плагину работать. По умолчанию везде.
- Пагинация — канонникал второй и следующих страниц списка ведёт на саму страницу (рекомендация Google, вариант по умолчанию) либо на первую страницу списка.
- Самоссылающиеся канониклы — выводить ли тег, указывающий на текущий адрес. Выключение убирает тег с таких страниц целиком.
- Отбрасываемые GET-параметры — список через пробел, по умолчанию UTM-метки,
gclid,yclid,fbclidи подобные.
Требования
Приложение Блог, фреймворк Вебасист 3.8.2 или новее, PHP 7.4 или новее. Тема витрины должна вызывать {$wa->head()} — его вызывают все штатные темы. Плагины «Категории» и «Теги» не обязательны, но если они установлены, их страницы тоже покрываются. Плагин совместим со всеми вариантами настройки адресов Блога: «все блоги» с плоскими и с иерархическими адресами, отдельный блог, а также с датой в адресе записи.
