wp_list_categories()でカスタムタクソノミーを出力させる

wp_list_categories()でもカスタムタクソノミーを出力することが可能です。出力させたい場合、カスタムタクソノミー名が必要です。例えばカスタムタクソノミー名が'custom-post-terms'だった場合下記のようにwp_list_categories()にパラメータを指定してあげるとカスタムタクソノミー一覧が表示されます。

<?php
    wp_list_categories( array(
        'title_li' => '',
        'taxonomy' => 'custom-post-terms',
    ));
?>

カスタムタクソノミーがわからない場合functions.phpregister_taxonomy()を登録しているので、その第一引数がタクソノミー名になりますのでその値を'taxonomy'の値に入力します。

デフォルトだと出力は<li>になります。なので下記のように<ul>タグ等で囲む必要があります。

<ul>
<?php
    wp_list_categories( array(
        'title_li' => '',
        'style' => 'list',
        'taxonomy' => 'custom-post-terms',
    ));
?>
</ul>

HTMLをカスタマイズしたい場合

もしHTML出力をカスタマイズしたい場合wp_list_categories()の用意されているパラメータだけだと限界があります。wp_list_categories()だけでもできなくはないのですが、get_terms()を使ったほうがHTMLカスタマイズしやすいのでこちらを使ってご紹介します。

<?php
$terms = get_terms(array( 
    'taxonomy' => 'custom-post-terms',
));

foreach($terms as $tags){
    echo '<li><a href="' . esc_url(get_term_link($tags->term_taxonomy_id)) . '">' . esc_html($tags->name) . '</a></li>';
}
?>

'taxonomy'にはカスタムタクソノミー名を入力することで対象のカスタムタクソノミーが出力されます。

こちらのほうがli内のクラスもないのですっきりするのでカスタマイズしたい方はこちらがおすすめです。