CHIPS

制作チップス

WordPress カスタム投稿のターム名の取得と表示

2025年7月16日

カテゴリー: 制作チップス

WordPressで投稿に紐づく「カスタムタクソノミー」のターム(カテゴリーやタグのようなもの)を取得して、その名前を表示する方法。

カスタムタクソノミー:terms-kind

<?php
// タームの取得
$terms = get_the_terms($post->ID, 'terms-kind');

// タームが存在し、配列である場合のみ処理する
if ($terms && !is_wp_error($terms)) {
    foreach ($terms as $term) {
        echo esc_html($term->name) . '<br>';
    }
}
?>
  • esc_html() を使って、ターム名にHTMLが含まれていても安全に出力します。
  • <br> を加えることで、複数のターム名が改行されて見やすくなります。

複数のターム名を <span> タグで区切って表示したい場合

<?php
$terms = get_the_terms($post->ID, 'terms-kind');

if ($terms && !is_wp_error($terms)) {
    $term_names = array();

    foreach ($terms as $term) {
        // 各ターム名を span タグで囲む
        $term_names[] = '<span>' . esc_html($term->name) . '</span>';
    }

    // span タグ同士を区切って出力(スペースで区切る例)
    echo implode(' ', $term_names);
}
?>

カンマ区切りにしたい場合

echo implode(', ', $term_names);

|(縦棒)で区切りたい場合

echo implode(' | ', $term_names);

<span class="クラス名"> にして、CSS で装飾したい場合

$term_names[] = '<span class="term-name">' . esc_html($term->name) . '</span>';

カスタム投稿の作成方法についてはこちら

WP_Queryを使って最近記事の一覧を表示する方法はこちら