2016-06-29 11 views
0

WordPress RSSフィードにカスタム値を追加しようとしています。私は私のテーマfunction.phpの下にこれを置いているWordpress:RSSフィードにコンテンツを追加

function add_custom_fields_to_rss() { 
    return "<test>test</test>\n"; 
} 
add_action('rss_item', 'add_custom_fields_to_rss'); 
add_action('rss_item2', 'add_custom_fields_to_rss'); 

:テストの目的のために私はこのコードを得ました。 http://example.com/feedでrssを取得しようとすると、自分のカスタム関数で返されたテストコンテンツはありません。

なぜ誰が知っていますか?あなたがする必要がある

+0

をチェックアウトする必要があります。 – naththedeveloper

答えて

2

まず最初は、上記のコードは、フィードを追加するcustomRSS機能を、トリガー

add_action('init', 'customRSS'); 
function customRSS(){ 
     add_feed('feedname', 'customRSSFunc'); 
} 

あなたのテーマののfunctions.phpファイルに新しいRSSフィードを作成することです。 add_feed関数には、feednameとコールバック関数という2つの引数があります。フィード名はあなたの新しいフィードurl yourdomain.com/feed/feednameを構成し、実際にフィードを作成するためにコールバック関数が呼び出されます。後で必要になるので、フィード名を書き留めておきます。あなたのテーマののfunctions.phpファイル内 あなたがフィードを初期化したら、次のコードを使用して、必要な飼料を製造するためにコールバック関数を作成する必要があります

function customRSSFunc(){ 
     get_template_part('rss', 'feedname'); 
} 

上記のコードは、にget_template_part機能を使用しています別のテンプレートファイルにリンクすることもできますが、RSSコードを直接関数に配置することもできます。 get_template_partを使用することで、機能をレイアウトとは別に保つことができます。 get_template_part関数には、slugとnameの2つの引数があります。テンプレートファイルの名前は、先頭のファイルから始まるテンプレートファイルを探します(最初のファイルが見つからない場合は、2番目のファイルに移動します)など):詳細について

wp-content/themes/child/rss-feedname.php 
wp-content/themes/parent/rss-feedname.php 
wp-content/themes/child/rss.php 
wp-content/themes/parent/rss.php 

、あなたはあなたの関数が `echo`なく` return`する必要があり、このリンクに http://www.wpbeginner.com/wp-tutorials/how-to-create-custom-rss-feeds-in-wordpress/

+0

彼は* new *フィードを追加しようとは考えていませんが、既存の*フィードにコンテンツを追加しようとしています。 – naththedeveloper

+0

しかし、彼はRssフィードにカスタムフィールドを追加しようとしています。私の意見では、独自のカスタムフィードを使用するほうがよいでしょう。 – Jayanta

+0

あなたは正しいです。ありがとうございました! – m1crdy

関連する問題