概要
get_tag
関数は、WordPress の投稿に関連するタグ情報を取得するために使用されます。主に以下の機能を実装する際によく使われます。
- 投稿のタグを表示する
- タグに基づくフィルターを作成する
- タグの名前やIDを取得する
- タグに関連する投稿のリストを作る
- タグを元にしたカスタムクエリを実行する
- タグのメタデータを表示する
- タグの数を表示する
- タグの一覧を表示するウィジェットを作成する
構文
get_tag( $tag_id );
パラメータ
$tag_id
(int): 取得したいタグのID。
戻り値
- 取得したタグ情報のオブジェクト。タグが見つからなかった場合は
null
を返します。
関連する関数
使用可能なバージョン
- WordPress 2.0.0 以降。
コアファイルのパス
wp-includes/taxonomy.php
サンプルコード
サンプルコード1: 特定のタグ情報を取得する
このコードは、特定のタグIDを指定してそのタグの情報を取得し、タグ名を表示します。
$tag_id = 1; // タグIDを設定
$tag = get_tag( $tag_id );
if ( $tag ) {
echo $tag->name; // タグ名を表示
}
引用元: https://developer.wordpress.org/reference/functions/get_tag/
サンプルコード2: 投稿のタグ一覧を取得する
このコードは、投稿のタグを取得し、タグの名前をリストで表示します。
$post_tags = get_the_tags( get_the_ID() );
if ( $post_tags ) {
foreach ( $post_tags as $tag ) {
echo '<li>' . esc_html( $tag->name ) . '</li>';
}
}
引用元: https://developer.wordpress.org/reference/functions/get_the_tags/
サンプルコード3: タグ情報をカスタムクエリで使用する
このコードは、特定のタグに関連する投稿を表示するカスタムクエリを作成します。
$args = array(
'tag_id' => 1, // タグID
);
$tag_query = new WP_Query( $args );
while ( $tag_query->have_posts() ) {
$tag_query->the_post();
the_title();
}
wp_reset_postdata();
引用元: https://developer.wordpress.org/reference/classes/wp_query/
サンプルコード4: タグのメタデータを取得する
このコードは、タグのメタデータを取得し、表示します。
$tag_id = 2; // タグIDを設定
$tag = get_tag( $tag_id );
if ( $tag ) {
echo $tag->description; // タグの説明を表示
}
引用元: https://developer.wordpress.org/reference/functions/get_tag/
サンプルコード5: タグの数を表示
このコードは、特定の投稿に関連するタグの数を表示します。
$post_tags = get_the_tags( get_the_ID() );
if ( $post_tags ) {
echo 'この投稿には ' . count( $post_tags ) . ' 個のタグがあります。';
}
引用元: https://developer.wordpress.org/reference/functions/get_the_tags/
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | |
get_header | |
wp_head |
非推奨又は削除されたバージョン
get_tag
関数は特定のバージョンで非推奨や削除された記録はありません。