WordPressの記事を書いて、例えばカテゴリーを複数選択したとき(ニュース、日常)、記事の詳細ページとかに、選択したカテゴリーの一覧がいい感じに表示される関数を紹介する。
functions.phpに以下のように記述
function show_category( $delimiter = null ) {
$cats = get_the_category();
$tmp = $cats;
if( !$cats ) {
return false;
}
foreach( $cats as $cat) {
// 出力部分
echo $cat->name;
if( $delimiter && next($tmp) ) {
echo $delimiter;
}
}
}
使うときは、テンプレートに以下のように書く
<?php show_category(','); ?>
出力はこんな感じでされる
ニュース,日常
引数には区切り文字(’,’とか’/’)を指定できる。何も指定しない場合は、区切り文字なしで続けて表示される。
カテゴリーをspanとかaタグで囲みたいときは、foreachの中をちょっといじる。
function show_category( $delimiter = null ) {
$cats = get_the_category();
$tmp = $cats;
if( !$cats ) {
return false;
}
foreach( $cats as $cat) {
$cat_id = $cat->term_id;
$cat_link = get_category_link( $cat_id );
// 出力部分
echo '<a href="' .$cat_link. '">' .$cat->name. '</a>';
if( $delimiter && next($tmp) ) {
echo $delimiter;
}
}
}
上記のような関数を作り、引数なしで出力すると、そのカテゴリーページへのリンクがついたaタグで囲まれたカテゴリー一覧が出力される。

コメントを残す