-
Vadim TsukanovРазработчик -
Дата публикации30.05.2021
-
КатегорияWordpress
Задача:Убрать дубли страниц для шаблона пагинации
Как не крути, а сайты делают деньги. А чтобы все было эффективнее — все думают о SEO штуках, дубли — одна из таких штук, сегодня рассмотрим вариант, как убрать дубли на страницах пагинации в WordPress
Чтобы просто добавить «Страница — 1» или «Страница 25» к title и description сайта для страниц пагинации, необходимо добавить следующий код в functions.php шаблона.
function addPageNumberToMeta( $s )
{
global $page;
$paged = get_query_var( 'paged' ) ? get_query_var( 'paged' ) : 1;
!empty( $page ) && 1 < $page && $paged = $page;
$paged > 1 && $s .= ' - ' . sprintf( __( 'Page %s' ), $paged );
return $s;
}
add_filter( 'wpseo_metadesc', 'addPageNumberToMeta', 100, 1 );
add_filter( 'wpseo_title', 'addPageNumberToMeta', 100, 1 );
Как видно из кода, мы фильтруем wpseo_title и wpseo_metadesc это справедливо для плагина YOAST
Конечно можно добавлять проверки, как угодно.
мы не используем плагины, каждый плагин - потенциальная уязвимость, проблемы и т.д.
Подскажите, пожалуйста: если я хочу добавить номер страницы в meta-теги только для пагинации, но при этом хочу исключить первую страницу — как это корректно реализовать? Видел, что вы используете фильтры wpseo_title и wpseo_metadesc — возможно, можно добавить проверку if ( $paged > 1 ), чтобы не дублировать на первой странице. Сейчас я работаю с плагином Clearfy Pro и он подтягивает полезные SEO-фичи и оптимизацию. Пока с ним, пытаюсь разобраться самостоятельно. Спасибо за ответ заранее!
Интересный подход, спасибо! Пробовала добавлять номера страниц в и вручную через код — работает, но требует внимательности и тестов, особенно с пагинацией в WooCommerce или кастомных архивах. В итоге решила использовать clearfy pro — там уже есть готовые инструменты для управления мета-тегами, включая пагинацию, канонические URL и устранение дублей. Настраивается быстро и без риска что-то забыть или сломать. Удобнее, особенно на проектах с большим количеством страниц.
Проверил, все идеально работает. спасибо