【WordPress】投稿記事のタグをリンクなしで取得する

公開日:
更新日:
カテゴリー: WordPress

WordPressの投稿記事のタグを取得する場合、単純にテンプレートタグであるget_the_tag_list関数を使えばよいのですが、これはタグページへのリンク付きとなります。

これだと、タグ名だけが欲しい場合困ります。ここではリンクなしの形でタグ名を取得する方法について説明します。

get_the_tags関数

結論から言うと、get_the_tags関数を使えば良いです。

get_the_tags();

この関数は、投稿記事のタグ情報を文字列のみ(リンクなし)で取得します(投稿記事にタグがない場合、falseを返す)。

引数には投稿IDを渡すことができます。省略時は現在の投稿IDが渡されます。

戻り値

取得するデータは配列となっており、以下のようなオブジェクトが格納されています(タグが5つある場合、5つ返ってきます)。

Array
(
    [195] => stdClass Object
        (
            [term_id] => 195
            [name] => ジョーク
            [slug] => %e3%82%b8%e3%83%a7%e3%83%bc%e3%82%af
            [term_group] => 0
            [term_taxonomy_id] => 195
            [taxonomy] => post_tag
            [description] => 
            [parent] => 0
            [count] => 72
            [object_id] => 1328
            [filter] => raw
        )

    [586] => stdClass Object
        (
            [term_id] => 586
            [name] => 伝言
            [slug] => %e4%bc%9d%e8%a8%80
            [term_group] => 0
            [term_taxonomy_id] => 586
            [taxonomy] => post_tag
            [description] => 
            [parent] => 0
            [count] => 1
            [object_id] => 1328
            [filter] => raw
        )

)

サンプル

ということで、get_the_tags関数で取得した配列をループさせ、そこからタグ名を取り出せば、リンクなしのタグ名がすべて取得できます。

以下にサンプルプログラムを掲載します。

<?php
//現在の投稿のタグを配列で取得
$post_tags_array = get_the_tags();
//タグ情報があるか確認
if($post_tags_array){
	//取得したタグ名をループで取り出す
	foreach($post_tags_array as $post_tags){
		//「","」はカンマで区切っている
		echo $post_tags->name . ",";
	}
}
?>

これは、投稿記事が持つ全てのタグ名をカンマで区切った形で出力します。

 

あわせて読んでほしい!

 

コメント

まだコメントはありません。

コメントフォーム
お名前
コメント