Как добавить страницу в хлебные крошки Yoast
20 мая 2013 г., 00:28:56
Просмотры: 24.7K
Голосов: 12
Я использую Yoast SEO для WordPress и настроил хлебные крошки. Проблема в том, что структура моих страниц выглядит следующим образом.
/
/about
/blog - На этой странице я делаю запрос постов и отображаю их. Сами посты не имеют префикса в URL.
Хлебные крошки отображаются так:
Главная / Категория / Заголовок страницы
Я хочу, чтобы они отображались так:
Главная / Блог / Категория / Заголовок страницы
Это возможно?

Lucky Luke
505
Все ответы на вопрос
1
4
Вот основной принцип того, что вам нужно сделать:
- Подключитесь к API фильтрам
wpseo_breadcrumb_links
илиwp_seo_get_bc_ancestors
. - Добавьте ваш Блог в массив
$links
хлебных крошек WordPress SEO, используяarray_splice
.
Поместите этот код в файл functions.php
вашей темы:
/**
* Условное переопределение цепочки хлебных крошек Yoast SEO
* http://plugins.svn.wordpress.org/wordpress-seo/trunk/frontend/class-breadcrumbs.php
* -----------------------------------------------------------------------------------
*/
add_filter( 'wpseo_breadcrumb_links', 'wpse_100012_override_yoast_breadcrumb_trail' );
function wpse_100012_override_yoast_breadcrumb_trail( $links ) {
global $post;
if ( is_home() || is_singular( 'post' ) || is_archive() ) {
$breadcrumb[] = array(
'url' => get_permalink( get_option( 'page_for_posts' ) ),
'text' => 'Блог',
);
array_splice( $links, 1, -2, $breadcrumb );
}
return $links;
}
Примечание: Возможно, вам потребуется адаптировать код под специфику вашего сайта или нужды, но общая идея остаётся той же.

rjb
1.4K
7 нояб. 2013 г. 22:52:30
Комментарии
Это сработало идеально после того, как я изменил условия, URL и текстовые значения под свои нужды. Спасибо.

1 окт. 2014 г. 13:24:00
Странно. Этот код заменил 'Category' на 'Blog' вместо того, чтобы добавить перед ним.

4 нояб. 2017 г. 15:29:46
ИСПРАВЛЕНО: в моем случае потребовались значения "2, -3" вместо "1, -2", не знаю почему, но так работает.

4 нояб. 2017 г. 15:31:34
Похожие вопросы