term_description()

term_description()
目次

term_description()の用途

term_description() は、WordPress において任意のタクソノミー(taxonomy)の用語(term)の説明文(description)を取得する関数です。タグやカテゴリー、カスタムタクソノミーなど、全タクソノミーに共通して使える汎用的な関数です。

term_description()の基本構文

term_description( int $term = 0, string $taxonomy = 'post_tag' )

term_description()のパラメータ

引数説明
$termint説明を取得したい用語の ID。省略時は現在のクエリから自動取得されます。
$taxonomystring対象のタクソノミー名(例:category, post_tag, custom_taxonomy

term_description()の使用目的

  • タグ・カテゴリーの説明表示(例:タグアーカイブの冒頭など)
  • カスタムタクソノミーの term に説明文を登録し、サイト上で補足情報を提供
  • SEO対策(説明文によってタクソノミーページのオリジナリティを高める)

term_description()の使用例

① 現在表示中のターム(タグ・カテゴリなど)の説明を表示

echo term_description();

これは tag, category, taxonomy アーカイブページで使われ、現在のクエリに基づいたタームの説明が出力されます。

② 特定のカテゴリー ID の説明を表示

echo term_description( 5, 'category' );

カテゴリー ID 5 の説明文を表示します。

③ 特定のカスタムタクソノミーのタームの説明を表示

echo term_description( 12, 'genre' );

genre というカスタムタクソノミーの用語 ID 12 の説明文を表示します。

term_description()の実装例:タクソノミーアーカイブで条件付き表示

if ( is_tax() || is_category() || is_tag() ) {
    $desc = term_description();
    if ( ! empty( $desc ) ) {
        echo '<div class="term-description">' . wp_kses_post( $desc ) . '</div>';
    }
}

wp_kses_post() を使ってHTMLタグを安全に出力することをおすすめします。

term_description() と類似関数の違い

関数名用途対応タクソノミー出力方式
term_description()任意のタクソノミーの用語説明を取得すべて(汎用)値を返す
category_description()カテゴリーの説明を取得category 専用値を返す
tag_description()タグの説明を取得post_tag 専用値を返す

汎用的に使いたい場合は term_description() 一択です。

term_description()の説明文の登録方法(管理画面)

  1. WordPress管理画面 > 投稿 > カテゴリー または タグ
  2. 該当する用語をクリック
  3. 「説明」欄に説明文を入力
  4. 「更新」ボタンを押して保存

カスタムタクソノミーの場合も、同様の UI が用意されていれば可能です。

term_description()の出力調整のヒント

HTMLタグを許可して表示したい場合:

echo wp_kses_post( term_description() );

改行を自動で段落に変換:

echo wpautop( term_description() );

term_description()の注意点

注意点内容
空文字説明が未設定だと何も表示されません。空チェック推奨。
ID指定時のミス$termID ではなく スラッグ を渡すと正しく動作しません。IDを指定してください。
出力される文字列に <p> などのHTMLタグが含まれる場合があるwpautop() が自動適用されることもあるので、テーマの処理を確認しましょう。

term_description()のまとめ

項目内容
関数名term_description()
目的任意のタクソノミー用語(タグ・カテゴリー・カスタム分類)の説明文を取得
使用場所アーカイブページ、ナビゲーション補足、SEO対応など
出力方法HTMLではなく、説明テキスト文字列を返す(echoで出力)
セキュリティ対策wp_kses_post()esc_html() で適切にサニタイズ推奨

term_description() はカスタムタクソノミーの導入が当たり前になった現代の WordPress 開発において、非常に柔軟でパワフルな関数です。条件に応じて get_queried_object() と組み合わせれば、さらに応用の幅が広がります。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

初めてホームページを作成したのは1996年。
2000年よりフリーランスで主に中小企業、学校、各種公的団体、個人事業主のWordPressを活用したホームページ制作を行っています。WordPressテーマはそれぞれのクライアントに合わせて作成しています。
WordPressを活用したサイト運営のための情報発信をしていきます。

目次