Как исключить категорию постов из функции is_single()
На сайте реализованы хлебные крошки на всех страницах. Проблема в том, что после установки плагина-каталога(goods catalog) хлебные крошки отображаются и там, нужно их убрать со страниц товаров.
Вот код крошек:
<?php if ( is_single(‘9’) ) {
$post_id = get_the_ID();
$category_post = get_the_category($post_id);
$category_post_id = $category_post[0]->term_id;
?>
<ul class=»breadcrumbs»>
<li itemscope itemtype=»http://data-vocabulary.org/Breadcrumb»><a class=»home» href=»<?php bloginfo(‘url’); ?>» itemprop=»url»><span itemprop=»title»><?php echo $bread_crumbs_home; ?></span></a></li>
<?php if($category_post[0]->category_parent){ ?>
<li itemscope itemtype=»http://data-vocabulary.org/Breadcrumb»><a href=»<?php echo get_category_link($category_post[0]->category_parent); ?>» itemprop=»url»><span itemprop=»title»><?php echo get_cat_name($category_post[0]->category_parent) ?></span></a></li>
Как исключить из этого выражения все страницы из определенной категории? или страницы с определенным типом (в данном случае «good»).
Спасибо.
Вариант 1. (1, 7, 8 — id категорий в которых не нужно выводить)
$categories = get_the_category(); $category_id = $categories[0]->cat_ID; if(!in_array($category_id, array(1, 7, 8))){ // код хлебных крошек }
Вариант 2. (1, 7, 8 — id категорий в которых не нужно выводить)
$category = get_queried_object(); if(!in_array($category->term_id, array(1, 7, 8))){ // код хлебных крошек }
Вариант 3. По типу поста.($post_id — id записи, возможно $post->ID будет сразу работать)
$post_type = get_post_type( $post_id ); if(!in_array($post_type, array('good'))){ // код хлебных крошек }
Большое спасибо, использовал 3й вариант, все работает просто шикарно!