Blog

【WordPress】タームを親子順で表示

2016/03/25

カスタム投稿 Wordpress

備忘録です。

個人で運営している「食・相模原」で地域カテゴリを表示しているのですが、
区と町名が逆に表示されてしまうことがあります。

例:相模原 相模原市中央区

親子順に表示したいので下記を参考に実装をしました。

参考サイト
カスタムタクソノミーを親子に分けて表示

single-shop.php

カテゴリ:
<?php
$terms = get_the_terms( $post -> ID, 'shop_place' );//記事のタクソノミー情報を取得
$count = count($terms);//タクソノミーの個数カウント
if($count>0){
foreach ( $terms as $term ) {
$termparent = $term -> parent; //親のid取得(親がない場合すなわち自分が親の場合は0)
$termlink = get_term_link( $term, $taxonomy );//リンクURL取得
if($termparent==0){//親がない場合(つまり自分が親)
$parentname = $term -> name;//タクソノミー名取得
$parentlink = $termlink;//リンク取得
}else{//親がいる場合(つまり自分は子)
$childname = $term -> name;
$childlink = $termlink;
}
}
echo '<a href="' . esc_url( $parentlink ) . '">' .$parentname . '</a>'." > ".'<a href="' . esc_url( $childlink ) . '">' .$childname. '</a>';
}
?>
<?php echo get_the_term_list($post->ID,'shop_genre'); ?>
以下省略

「カテゴリ:相模原市中央区 相模原 レストラン ~~~」
のように表示されるようになりました。

カテゴリー

月間アーカイブ

MORE

ミュージシャンズ・プラザ

神社仏閣ホームーページ制作

ホームページ制作問合せ