【PHP】WordPressタグ操作方法まとめ【取得・更新】

php WordPress
この記事は約2分で読めます。

WordPressのタグ操作方法をまとめました。

get tags:すべてのタグを取得する

<?php $tags = get_tags() ?>

get the tags :記事内のタグを取得する

<?php $tags = get_the_tags(); ?>

get_term_by:タグ名からポストタグ(Term)を取得する

<?php $tag = get_term_by('name', $tag_name, 'post_tag'); ?>

get tag link:タグのリンクを取得する

<a href="<?php echo get_tag_link($tag_id); ?>">タグ名</a>

get tags関数と組み合わせる場合

<?php
$tags = get_tags();
$html = '<div class="post_tags">';
foreach ( $tags as $tag ) {
	$tag_link = get_tag_link( $tag->term_id );
			
	$html .= "<a href='{$tag_link}' title='{$tag->name} Tag' class='{$tag->slug}'>";
	$html .= "{$tag->name}</a>";
}
$html .= '</div>';
echo $html;
?>

wp set post tags:投稿にタグをつける

$appendは初期値がfalseなので、明示的にTrueを指定しなければ、最後の関数で渡した$tagsに更新します。foreachなどのループで使う場合は$appendにTrueを渡すようにしましょう。

<?php wp_set_post_tags( $post_ID, $tags, $append ) ?>

【応用】すべてのタグの中から本文に含まれているタグを自動的に保存する

タグ名が含まれるかと本文を小文字に変換した後にタグスラッグが含まれるかを判定してタグの追加をしています。

$content = get_post($post_id)->post_content;
$tags = get_tags();
foreach ($tags as $tag){
	if (strpos($content,$tag->name) !== false || strpos(mb_strtolower($content, 'UTF-8'),$tag->slug) !== false) {
		wp_set_post_tags($post_id, $tag->name, true);
	}
}
この記事を書いた人
サイト運営者
RYU
RYU

静岡の情シス顧問|情シス出身→大手システム会社→独立|
企業のITコスト・契約・情シス体制を整理|
システム会社の見積確認、社内対応と外部依頼の整理|
Salesforce上流・見積評価にも対応|
現場に寄り添い、ITで会社を強くする。

RYUをフォローする
WordPress
スポンサーリンク