概要
get_default_feed
フィルタは、WordPressがデフォルトのフィードタイプを取得する際に使用されます。このフィルタを利用することで、デフォルトのフィードをカスタマイズすることができます。典型的な使用ケースとしては、サイト固有のフィード形式に変更したり、SEOやユーザビリティの観点からフィードの形式を選択したりする際に役立ちます。
このフィルタは以下のような機能を実装する際によく使われます。
- 特定のフィードエクスポート形式の追加
- フィードのデフォルト設定の変更
- 特定のコンテンツタイプ用のフィードの指定
- フィードの拡張子のカスタマイズ
- 異なる言語や地域向けのフィードの変更
- フィード購読の最適化
- RSSとATOMフィードの自動切り替え
- フィードの条件に応じたカスタム処理
構文
add_filter('get_default_feed', 'your_custom_function');
パラメータ
$feed
: 取得したデフォルトのフィードタイプ(文字列)
戻り値
- カスタマイズされたフィードタイプ(文字列)
関連する関数
使用可能バージョン
- WordPress 2.9 以降
コアファイルのパス
wp-includes/default-filters.php
サンプルコード
サンプルコード1: RSSフィードをATOMICフィードに変更
add_filter('get_default_feed', function($feed) {
return 'atom'; // デフォルトフィードをatomに変更
});
このコードは、デフォルトのフィードタイプをRSSからATOMに変更します。
サンプルコード2: フィードの拡張子を変更する
add_filter('get_default_feed', function($feed) {
return 'customfeed'; // デフォルトフィードの拡張子をカスタマイズ
});
このコードは、フィードのデフォルト拡張子をcustomfeed
に変更します。
サンプルコード3: 特定の条件でフィードを変更
add_filter('get_default_feed', function($feed) {
if (is_single()) {
return 'rss2'; // シングル投稿のときはRSS2を使用
}
return $feed;
});
このコードは、シングル投稿の際にデフォルトのフィードをRSS2に変更します。
サンプルコード4: WordPressの言語によってフィードを変更
add_filter('get_default_feed', function($feed) {
if (get_locale() == 'ja') {
return 'atom'; // 日本語サイトの場合はATOMを使用
}
return $feed;
});
このコードでは、日本語のユーザーがアクセスした場合にデフォルトフィードをATOMに設定します。
サンプルコード5: 検索結果ページでのフィード変更
add_filter('get_default_feed', function($feed) {
if (is_search()) {
return 'rss2'; // 検索結果ページではRSS2を使用
}
return $feed;
});
このコードは、検索結果ページにアクセスした際はRS2にフィードのデフォルトを変更します。
この関数のアクションでの使用可能性
アクション | 使用可能性 |
---|---|
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_default_feed
フィルタは非推奨または削除されていません。