Breadcrumb NavXTのカスタマイズ
ぱんくずの中身を書き換えたい場合など、Breadcrumb NavXTを使用したく無いカテゴリーを除外する。
■ 一つのカテゴリを除外する(例:NEWSを除外する)
function my_filter_breadcrumbs($bcnObj) {
$trail = array();
if ( count($bcnObj->trail) > 0 ) {
for ( $i = 0; $i < count($bcnObj->trail); $i++ ) {
if ( 'NEWS' != $bcnObj->trail[$i]->get_title() ) {
$trail[] = $bcnObj->trail[$i];
}
}
}
$bcnObj->trail = $trail;
return $bcnObj;
}
add_action('bcn_after_fill', 'my_filter_breadcrumbs');
■ 複数カテゴリーを除外する(例:NEWSとEVENTを除外する)
function my_filter_breadcrumbs($bcnObj) {
$trail = array();
if ( count($bcnObj->trail) > 0 ) {
for ( $i = 0; $i < count($bcnObj->trail); $i++ ) {
if ( 'NEWS' != $bcnObj->trail[$i]->get_title() && 'EVENT' != $bcnObj->trail[$i]->get_title() ) {
$trail[] = $bcnObj->trail[$i];
}
}
}
$bcnObj->trail = $trail;
return $bcnObj;
}
add_action('bcn_after_fill', 'my_filter_breadcrumbs');
■ よびだしタグをifで書き換える
<?php
if (function_exists('bcn_display') && !is_front_page()) {
if(!is_post_type_archive('hogehoge')){
echo '<div id="topicPath"><div class="inner">';
bcn_display();
echo '</div></div>';
}else{
echo '<div id="topicPath"><div class="inner"><span property="itemListElement" typeof="ListItem"><a property="item" typeof="WebPage" href="';
echo esc_url(home_url('/'));
echo '" class="home"><span property="name">ホーム</span></a><meta property="position" content="1"></span> > <span property="itemListElement" typeof="ListItem"><span property="name">';
echo '特別な記事一覧</span><meta property="position" content="2"></span></div></div>';
}
}
?>
■spanではなくリストで出力する
<?php if(function_exists('bcn_display')){
echo '<ol itemscope itemtype="http://schema.org/BreadcrumbList">';
bcn_display_list();
echo '</ul>';
}?>
■共通パーツなどでフロントページを除外したい場合
<?php
if (function_exists('bcn_display') && !is_front_page()) {
echo '<div id="topicPath"><div class="container">';
bcn_display();
echo '</div></div>';
}
?>
参考サイト
-
前の記事
twitterタイムライン埋め込み手順(201702現在最新) 2017.02.09
-
次の記事
WordPressの条件分岐まとめ 2017.02.15