WordPressで現在のページのカテゴリー(ターム)を取得する方法まとめ

投稿ページやアーカイブページで今のカテゴリーを取得する方法をまとめておきます。

カスタム投稿タイプ

配列で取得

<?php
global $post;
$array = get_the_terms( $post->ID, 'タクソノミー名' );
?>

参考:https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/get_the_terms

ちなみに、取得した$arrayを引数にして

<?php get_term_link( $array[0] ); ?>

でリンク(URL)を取得できます。

HTMLで取得

<?php
global $post;
echo get_the_term_list( $post->ID, 'タクソノミー名' );
?>

参考:https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/get_the_term_list

<ul class="styles">
    <li><a href="person1">Style 1,</a></li> 
    <li><a href="person2">Style 2,</a></li>
</ul>

みたいなhtml文字列が返ってきます。

カテゴリー

<?php
global $post;
$array = get_the_category( $post->ID );
?>

参考:https://wpdocs.osdn.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/get_the_category