Как добавить хлебные крошки в тему GeneratePress
В популярной и легковесной теме GeneratePress под WordPress по умолчанию, к сожалению, нет хлебных крошек, которые полезны для сео и удобной навигации по сайту.
Исправим это маленькое недоразумение.
Yoast SEO
При использовании сеошного плагина от Yoast хлебные крошки там идут «из коробки». Вы просто включаете их в настройках плагина и вставляете в тему при помощи нужного вам хука (руководство по хукам).
Для себя я выбрал хук generate_before_content
, на который и повесил вставку хлебных крошек:
add_action(
'generate_before_content',
function() {
?>
<?php if ( function_exists( 'yoast_breadcrumb' ) && ! is_front_page() ) : ?>
<?php yoast_breadcrumb( '<div class="grid-container grid-parent"><p id="breadcrumbs">', '</p></div>' ); ?>
<?php endif; ?>
<?php
}
);
При использовании сеошного плагина The SEO Framework для генерации хлебных крошек можно использовать популярное решение в виде плагина Breadcrumb NavXT.
А вставить сами крошки при помощи хука generate_before_content
, как в предыдущем варианте:
add_action(
'generate_before_content',
function() {
?>
<?php if ( function_exists( 'bcn_display' ) && ! is_front_page() ) : ?>
<div class="breadcrumbs" typeof="BreadcrumbList" vocab="http://schema.org/">
<?php bcn_display(); ?>
</div>
<?php endif; ?>
<?php
}
);
Hook Element
Также добавить крошки можно при помощи самой темы через админку WordPress. Для этого создайте новый элемент в разделе Внешний вид
-> Elements
-> Добавить новый
с типом Hook
.
И далее укажите настройки как на скриншоте:
И не забудьте указать, где показывать хлебные крошки:
Опубликуйте новый Element и смотрите результат на сайте.
Живой пример таких хлебных крошек можно увидеть на нашем проекте, посвящённом WordPress Digest.
Чего то не выводятся через Hook Element. Вот здесь — https://wpmania.ru/ Всё сделал по инструкции.
Так а плагин Breadcrumb NavXT установлен?
У меня Yoast SEO
Всё справился.
В чём была ошибка?
В плагине Clearfy были отключены хлебные крошки от Yoast SEO.
Понятно, только не понятно зачем вам Clearfy, который отключает крошки, которые отключают я в самом Yoast. Из-за Clearfy от обоих поставщиков всегда больше проблем, чем пользы.
Это вам проблемы заметны, а нам простым пользователям нет. Не полностью отключают, а Удаляют дублирование названия статьи в хлебных крошках Yoast SEO. Сам не знаю зачем это они эти настройки сделали.
Михаил, а как вывести например, просмотры страниц, время чтения статьи, Last update в GeneratePress в одну линию с временем публикации? Вывод через generate_after_entry_title они ниже отображаются.
А покажите что и как вы выводите? Скорее всего нужен просто CSS, типа
white-space: nowrap
.Использую плагин для просмотров WP-PostViews, добавляю код <?php if(function_exists(‘the_views’)) { the_views(); } ?> в Hook generate_after_entry_title
Я бы наверное смог бы напрямую вставить код, но тема обновляется и опять придётся по новому вставлять. Я понимаю что нужен наверное CSS, но как я говорил я не спец. Написали бы пост как в теме GeneratePress красиво вывести просмотры страниц, время чтения статьи и Last update.
Сейчас многие используют данную тему, вот было бы полезно всем почитать.
Чтобы ваши изменения не терялись при обновлении темы — используйте дочернюю тему.
Это я тоже знаю.
Если я правильно понял, про какой блок вы говорите, то тогда допишите произвольный CSS: