概要
wp_title_rss
フィルタは、フィード向けのページタイトルを出力する際に使用されるフィルタです。このフィルタを使用することで、RSSフィードに表示されるページのタイトルをカスタマイズできます。具体的には、投稿やページがフィードに表示されるときにタイトルを変更するために利用されることが多いです。以下に、このフィルタのよく使われる目的を挙げます。
- フィードタイトルに特定のプレフィックスやサフィックスを追加する。
- 特定の条件に基づいてタイトルを動的に変更する。
- タイトルにカスタムフィールドの値を追加する。
- タイトルに投稿タイプに応じた変更を加える。
- タイトルの言語を翻訳する。
- 各フィードに異なるスタイルでタイトルを出力する。
- タイトルに特定のウィジェット情報を挿入する。
- トピックやカテゴリに基づくタイトルの変更。
構文
add_filter( 'wp_title_rss', 'my_custom_rss_title' );
function my_custom_rss_title( $title ) {
// カスタマイズしたい処理
return $title;
}
パラメータ
$title
– フィードで表示されるタイトル文字列。
戻り値
- カスタマイズされたタイトル文字列。
関連する関数
使用可能なバージョン
このフィルタは、WordPressのバージョン 1.5 以降で使用可能です。
コアファイルのパス
wp-includes/rewrite.php
サンプルコード
サンプル1: プレフィックスの追加
add_filter( 'wp_title_rss', 'add_prefix_to_rss_title' );
function add_prefix_to_rss_title( $title ) {
return 'Prefix: ' . $title;
}
このコードは、フィードに表示されるすべてのタイトルの前に「Prefix: 」という文字列を追加します。
サンプル2: カスタムフィールドを追加
add_filter( 'wp_title_rss', 'add_custom_field_to_rss_title' );
function add_custom_field_to_rss_title( $title ) {
$custom_field = get_post_meta( get_the_ID(), 'custom_field_key', true );
return $title . ' - ' . $custom_field;
}
このコードは、投稿のカスタムフィールドの値をフィードタイトルの末尾に追加します。
サンプル3: 特定の投稿タイプに変更を加える
add_filter( 'wp_title_rss', 'modify_rss_title_for_custom_post_type' );
function modify_rss_title_for_custom_post_type( $title ) {
if ( get_post_type() === 'custom_post_type' ) {
return 'Custom: ' . $title;
}
return $title;
}
このコードは、特定のカスタム投稿タイプのタイトルに「Custom: 」というプレフィックスを追加します。
サンプル4: タイトルを翻訳
add_filter( 'wp_title_rss', 'translate_rss_title' );
function translate_rss_title( $title ) {
return __( $title, 'text-domain' );
}
このコードは、フィードのタイトルを特定のテキストドメインで翻訳します。
サンプル5: タイトルにカテゴリを追加
add_filter( 'wp_title_rss', 'add_category_to_rss_title' );
function add_category_to_rss_title( $title ) {
$category = get_the_category();
if ( ! empty( $category ) ) {
return $title . ' | ' . esc_html( $category[0]->name );
}
return $title;
}
このコードは、フィードタイトルの末尾に投稿カテゴリの名前を追加します。
この関数のアクションでの使用可能性
アクション名 | 使用可能性 |
---|---|
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 |