ワードプレスでカスタム投稿のカテゴリー(タクソノミー、ターム)名とリンクを出力するPHPのコードをご紹介、解説いたします。
ワードプレスでカスタム投稿のカテゴリー(タクソノミー)名とリンクをすべて出力する方法
ワードプレスはカスタム投稿タイプとして、投稿の概念そのものを増やすことができます。
このカスタム投稿タイプを増やすプラグインとして、最もよく利用されているのが Custom Post Type UI ですね。
また、このカスタム投稿タイプにカスタムタクソノミーというカテゴリーの概念とタームというカテゴリーの実態を作成付与することも可能です。
このカスタムタクソノミーとタームのリストを任意の投稿IDを指定するとすべてリストでリンク付きで出力するコードをご紹介いたします。
カスタム投稿のカテゴリー(タクソノミー、ターム)名をすべて出力するPHPコード
このコードはsingle.phpなどの一つの投稿を表示するプログラムで動作します。
$post_id = get_the_ID();//現在のカスタム投稿のIDをを取得します
$post = get_post($post_id);
$post_type = $post->post_type;
$taxonomies = get_object_taxonomies($post_type);//1
$output = "<ul>";
foreach ($taxonomies as $taxonomy) {
$output .= "<li>".$taxonomy.": "; //2
$terms = get_the_terms( $post_id, $taxonomy ); //3
if ( !empty( $terms ) ) {
foreach ( $terms as $term )
$output .= '<a href="' .get_term_link($term->slug, $taxonomy) .'">'.$term->name.'</a> '; //4
}
$output .= "</li>";
}
$output .= "</ul>";
echo $output;//5
このコードの解説
1 このカスタム投稿に定義されたなカスタムタクソノミーの名称をリストで取得します
2 その名称をforeachで文字列に追加します
3 次に投稿にアサインされているそのタクソノミーのすべてのタームのリストを取得します
4 そちらをリンク付きで文字列に追加します
5 最後にその文字列を出力します
WordPress ワードプレスのプラグインやテーマのカスタマイズのご依頼・ご相談はWPドクターまでお気軽にお送りください





