WordPressのデフォルトの設定では、「RSSフィードの<category>
タグ内にカテゴリーとタグが区別なく出力」されます。これは混乱を招きやすいので、今回はカテゴリーとタグを明確に区別する方法をご紹介します。
目次
なぜこの区別が必要なのか?
RSSフィードの購読者や、外部ツールを使用してフィードを取り込む時、カテゴリーとタグの情報が混在していると、情報の取得や整理が難しくなります。これを解消するため、区別させます。
カテゴリーとタグを区別する方法
以下の手順で、カテゴリーとタグを区別してRSSフィードに出力できます。
functions.php
ファイルを開きます。- 以下のコードを追加します。
/**
* RSSフィードでカテゴリーとタグを区別して出力する
*/
function custom_feed_categories_tags( $the_list, $type ) {
if ( 'rss2' != $type ) return $the_list; // RSS2の場合のみ適用
$categories = get_the_category();
$tags = get_the_tags();
$cat_tag_list = '';
// カテゴリーのリストを作成
if ( $categories ) {
foreach ( $categories as $category ) {
$cat_tag_list .= sprintf(
'<category domain="%s" nicename="%s" type="category"><![CDATA[%s]]></category>',
esc_attr( get_category_link( $category->term_id ) ),
esc_attr( $category->slug ),
esc_html( $category->name )
);
}
}
// タグのリストを作成
if ( $tags ) {
foreach ( $tags as $tag ) {
$cat_tag_list .= sprintf(
'<category domain="%s" nicename="%s" type="tag"><![CDATA[%s]]></category>',
esc_attr( get_tag_link( $tag->term_id ) ),
esc_attr( $tag->slug ),
esc_html( $tag->name )
);
}
}
return $cat_tag_list;
}
add_filter( 'the_category_rss', 'custom_feed_categories_tags', 10, 2 );
変更前のRSSフィードのカテゴリーとタグ部分はこうなっています。
先にカテゴリーが出力されますが、RSSフィードだけ見てると区別がつきません。
<category><![CDATA[CULTURE]]></category>
<category><![CDATA[WORKS]]></category>
<category><![CDATA[engineer]]></category>
<category><![CDATA[keyword]]></category>
変更後は、カテゴリーとタグをそれぞれtype="category"
とtype="tag"
の属性で区別されます。
これなら、カテゴリーとタグの区別が容易になりますね。
<category domain="https://hogehoge.com/category/culture/" nicename="culture" type="category"><![CDATA[CULTURE]]></category>
<category domain="https://hogehoge.com/category/living/" nicename="living" type="category"><![CDATA[LIVING]]></category>
<category domain="https://hogehoge.com/tag/engineer/" nicename="engineer" type="tag"><![CDATA[engineer]]></category>
<category domain="https://hogehoge.com/tag/keyword/" nicename="keyword" type="tag"><![CDATA[keyword]]></category>
まとめ
WordPressのRSSフィードでカテゴリーとタグを正しく区別することで、購読者や外部ツールが情報をより効率的に取得・整理できるようになります。この小さな変更が、ユーザーエクスペリエンスの向上に繋がりますので、ぜひ試してみてください。
関連記事
あわせて読みたい


RSSフィードで、アイキャッチ画像・抜粋・カテゴリーを外部サイトに表示させる
RSS(Really Simple Syndication)は、「ウェブサイトのコンテンツを配信するためのXMLベースのフォーマット」のことで、WordPressにはデフォルトでついている機能です...
コメント
コメント一覧 (1件)
[…] WordPressのRSSフィードにカテゴリーとタグを区別して出力する方法 […]