パンくずに固定ページを特定のカテゴリーの上の層に表示する方法
-
いつもお世話になります。
タイトルにある通り、パンくずに固定ページを特定のカテゴリーの上の層に表示する方法を探しています。やりたいこととしては、複数のカテゴリーの上に、カテゴリーでなく固定ページを親として設定することはできないと思うので、せめてユーザには見た目そのように見えるように、グローバルメニューでこの固定ページの下にこれらのカテゴリーを入れることにしました。
問題はこれらのカテゴリー内にいる時に表示されるパンくずでは、これらカテゴリーの親はHomeなので、間に入っていると見せたい固定ページの情報(とリンク)は表示されません。
要はAというカテゴリの一覧ページにいる際に、Home>固定ページ名>カテゴリーAというふうに現在地点が固定ページの下に出るようにしたいと思っています。
色々と検索してみた結果、この解決済フォーラムの方の質問と同じだと思うのですが、それなりに頑張ったのですが、初心者なため、自分のパンくずにうまく取り入れられませんでした。
どなたか表記の仕方をご教示頂けませんでしょうか。今現在のパンくずの関連すると思われる抜粋部分は下記となります。
何卒よろしくお願い致します。function breadcrumb($divOption = array(“id” => “breadcrumb”, “class” => “clearfix”)){
global $post;
$str =”;
if(!is_home()&&!is_admin()){
/* !is_admin は管理ページ以外という条件分岐 */
$tagAttribute = ”;
foreach($divOption as $attrName => $attrValue){
$tagAttribute .= sprintf(‘ %s=”%s”‘, $attrName, $attrValue);
}
$str.= ‘<div’. $tagAttribute .’>’;
$str.= ‘- ‘;
- Home
- >
$str.= ‘‘;
$str.= ‘‘;
if(is_category()) {
//カテゴリーのアーカイブページ
$cat = get_queried_object();
if($cat -> parent != 0){
$ancestors = array_reverse(get_ancestors( $cat -> cat_ID, ‘category’ ));
foreach($ancestors as $ancestor){
$str.=’- ‘. get_cat_name($ancestor) .’
- >
- ‘. $cat -> name . ‘
- ‘. get_cat_name($ancestor). ‘
- >
- term_id). ‘”>’. $cat-> cat_name . ‘
- >
- ‘. $post -> post_title .’
‘;
$str.=’‘;
}
}
$str.=’‘;
} elseif(is_single()){
//ブログの個別記事ページ
$categories = get_the_category($post->ID);
$cat = $categories[0];
if($cat -> parent != 0){
$ancestors = array_reverse(get_ancestors( $cat -> cat_ID, ‘category’ ));
foreach($ancestors as $ancestor){
$str.=’‘;
$str.=’‘;
}
}
$str.=’‘;
$str.=’‘;
$str.= ‘‘;
} elseif(is_page()){~この後は省略~
- トピック「パンくずに固定ページを特定のカテゴリーの上の層に表示する方法」には新たに返信することはできません。