パンくずナビリストを返す関数
パンくずナビを返す独自関数です。リンク付きで返ってきます。
どこかにやり方がないかな?と思って探したのですが、パっと目に付いたのがプラグインしかありませんでしたので…。
わざわざパンくずリストぐらいでプラグインを導入するのもどうかと思い、簡単ですが作成しましたので参考になれば、と公開しておきます。
PHP:
-
function get_pankuzu_navi( $page='page', $id=0 ) {
-
$output = '<a href="' . get_bloginfo('url') . '">ホーム</a>>> ';
-
-
// idの指定が無い場合は処理しない
-
if($id == 0) {
-
return $output;
-
}
-
-
if($page == 'page') {
-
$the_post = get_post($id);
-
// 親ページを取得
-
$ancestor = get_post_ancestors($the_post->parent);
-
// 後方(最上階層)からループ
-
$the_page = get_page($ancestor[$i]);
-
$output .= '<a href="' . get_permalink($ancestor[$i]) . '">' . $the_page->post_title . '</a>>> ';
-
}
-
}
-
} else {
-
$the_cat = get_the_category($id);
-
$the_cat = $the_cat[0];
-
$output .= get_category_parents($the_cat->cat_ID, true, ' ≫ ');
-
}
-
-
return $output;
-
}
テンプレートファイルのfunctions.phpに載せてやると良いかと思います。
引数ですが、
$page : ナビを返すリストの種類('page' or 'category')
ページの階層表示もしくはカテゴリの階層表示か選択します。
$id : post_id
下記のように使います。
PHP:
返ってくる形が気に食わない場合は、好きなように改造すれば良いと思います。
記事表示ここまで
リンクここまで
コメント・トラックバック ここまで
トラックバック用URL:
コメントフォーム
コメントフォーム
記事のリンク先URL:http://www.is-p.cc/wordpress/original-function/pankuzu-navi/593










