ワードプレスのadd_feed関数の使用方法・解説

概要

add_feed関数は、WordPressにカスタムフィードを追加するために使用されます。この関数を用いることで、独自のフィード形式を作成し、特定のコンテンツをRSSリーダーに供給することが可能になります。add_feed関数は、主に以下のような機能を実装する際に利用されます。

  1. 特定のカテゴリーやタグに基づいたフィードの作成
  2. ブログポストの更新情報をRSSフィードとして配信する
  3. 特定のカスタム投稿タイプのフィードを作成する
  4. ユーザーや著者のフィードを生成する
  5. 特定のページやカスタムクエリに基づくフィードを作成する
  6. コンテンツをフィードとして外部に配信する
  7. 教育や企業向けの特定のコンテンツフィードを提供する
  8. 特定のスラッグを持つフィードを簡単に作成する

構文

add_feed( $feed, $callback );

パラメータ

  • $feed (文字列) — 追加するフィードのスラッグ。
  • $callback (コールバック関数) — フィードを生成するための関数。省略した場合、デフォルトのフィードが使用される。

戻り値

  • なし (void)

関連する関数

使用可能なバージョン

  • 追加されたバージョン: 2.0

コアファイルのパス

  • wp-includes/feed.php

この関数のアクションでの使用可能性

アクション名 使用例
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

サンプルコード

サンプルコード1: カスタムフィードの追加

function my_custom_feed() {
    add_feed('custom_feed', 'my_custom_feed_callback');
}
add_action('init', 'my_custom_feed');

function my_custom_feed_callback() {
    // フィードの出力ロジック
}

このサンプルは、custom_feedというスラッグを持つカスタムフィードを作成し、my_custom_feed_callback関数でフィードを出力します。

サンプルコード2: カテゴリーフィードの追加

function category_feed() {
    add_feed('category_feed', 'category_feed_callback');
}
add_action('init', 'category_feed');

function category_feed_callback() {
    // 特定のカテゴリーのフィードを生成
}

このサンプルは、特定のカテゴリーからのフィードを生成する方法を示しています。

サンプルコード3: 著者フィードの作成

function author_feed() {
    add_feed('author', 'author_feed_callback');
}
add_action('init', 'author_feed');

function author_feed_callback() {
    // 著者の投稿を含むフィードを出力
}

このサンプルでは、著者に特化したフィードを作成します。

サンプルコード4: タグフィードの追加

function tag_feed() {
    add_feed('tag_feed', 'tag_feed_callback');
}
add_action('init', 'tag_feed');

function tag_feed_callback() {
    // 特定のタグに関連するフィードを生成
}

このサンプルコードは、タグに基づくフィードを作成するためのものです。

サンプルコード5: フィードの削除

function my_custom_feed_remove() {
    remove_feed('custom_feed');
}
add_action('init', 'my_custom_feed_remove');

このサンプルは、以前に追加したカスタムフィードを削除する方法を示します。

この関数について質問する


上の計算式の答えを入力してください