9ml

single.phpに記事に紐づくターム名を表示する

リンクなしの場合

<?php
$terms = get_the_terms($post->ID, 'カスタムタクソノミー名');
if ( !empty($terms) ) {
    foreach ( $terms as $term ) {
        echo '<span>' . $term->name . '</span>';
    }
}

リンクありの場合

<?php
$terms = get_the_terms($post->ID, 'カスタムタクソノミー名');
if ( !empty($terms) ) {
    foreach ( $terms as $term ) {
        $term_link = get_term_link($term);
        if ( !is_wp_error($term_link) ) {
            echo '<a href="' . esc_url($term_link) . '"><span>' . esc_html($term->name) . '</span></a>';
        }
    }
}
?>

このコードを書いて、リンクをクリックすると404エラーが発生します

それはパーマリンク構造が正しく更新されていないためです

WordPress管理画面の[設定]->[パーマリンク]から「変更を保存」ボタンをクリックしてください(何も変更せずに保存してOK)

パーマリンク設定が再生成され、404エラーが解決します

ホームに戻る