WordPressでパンくずリストを表示する(タグ編)

プログラミング関係

ブログの記事が多くなってくると、カテゴリーやタグで記事のグループ分けをすると思う。
そして訪問者が記事に来た時、そのカテゴリーやタグを参考に情報収集をするだろう。
そんな時に役立つのがパンくずリストによる誘導だ。
詳しくはググってもらうとして、今回はその導入と、タグをパンくずリストに組み込む方法を紹介する。

プラグインの導入

今回はyoastさんが作ったプラグインを利用する。
Yoast Breadcrumbs
導入方法はダウンロード&アップロード。
そして有効化だ。
その後、single.phpなどに

<?php if ( function_exists('yoast_breadcrumb') ) { 	yoast_breadcrumb('<p id="breadcrumbs">','

'); } ?>

を書き加える。
これだけ。
プラグインの設定なんかはデフォルトのままでも良いし、自分でいじっても良い。

パンくずリストでカテゴリーの代わりにタグを使う

ここからが今回の本題。
カテゴリーの記事数が多すぎるので、代わりにタグにしようと思っていじってみた。
僕は個別記事にしかパンくずリストを表示しないので、それ以外は意識していません。
なのでカテゴリーなどにも表示しようとする人はこの方法ではダメかも。

まず、プラグインの管理画面で『Show category in post breadcrumbs?:』にチェックを入れる。
それからプラグイン本体を改造しよう。
『yoast-breadcrumbs.php』を改造する事になる。

if (is_single() && $opt['singlecatprefix']) {
	$cats = get_the_category();
	$cat = $cats[0];
	if ( is_object($cat) ) {
		if ($cat->parent != 0) {
			$output .= get_category_parents($cat->term_id, true, " ".$opt['sep']." ");
		} else {
			$output .= ''.$cat->name.' '.$opt['sep'].' ';
		}
	}
}

この部分を編集するので、この部分を削除するかコメントアウトする。
そして以下のように書き換えよう。Let’s コピペ。

if (is_single() && $opt['singlecatprefix']) {
	$tags = get_the_tags();
	if ($tags) {
		$i = 0;
		foreach($tags as $tag) {
			if($i > 0){
				$output .= ", ";
			}
			$output .= ''.$tag->name.' ';
			$i++;
		}
		$output .= $opt['sep'].' ';
	}
}

書き換えたらアップロードして動いているか確認しよう。
複数のタグが割り振られていてもキチンと動くはず。

コメント

タイトルとURLをコピーしました