WordPress RSSフィードを完全にカスタマイズする方法

複数のサイトを運営する中で、デフォルトのWordPress RSSフィードでは私たちのニーズには十分ではないことにすぐに気づきました。制限があり、コンテンツ配信に対する望むような管理ができませんでした。

これはよくある不満であり、多くの人はカスタマイズされていないフィードがトラフィックの損失やコンテンツの盗難につながる可能性があることに気づいていません。要約の代わりに完全な投稿を共有していたり、重要なブランディングの機会を逃していたりする可能性があります。

私たちは、独自のフィードを微調整するために多くの時間を費やし、それらを完璧に仕上げました。これで、コンテンツを同じレベルで管理できるようになります。

このガイドでは、カスタムコンテンツの追加方法、ブランディングの組み込み方法、スクレイパーから記事を保護する方法を詳しく説明します。

WordPress RSSフィードを完全にカスタマイズする方法

この記事でカバーする内容の簡単な概要を以下に示します。

WordPress RSSフィードにカスタムコンテンツを追加する(簡単な方法)

カスタムウェブサイトコンテンツをWordPress RSSフィードに追加する最も簡単な方法は、All in One SEOプラグインを使用することです。これは市場で最高のWordPress SEOプラグインであり、ウェブサイトのSEOを簡単に最適化できます。

まず最初に行うべきことは、All in One SEO プラグインをインストールして有効化することです。詳細については、WordPress プラグインのインストール方法に関するステップバイステップガイドをご覧ください。

有効化すると、プラグインのセットアップを求められます。画面の指示に従うか、All in One SEOの設定方法に関するガイドを参照してください。

その後、All in One SEO » General Settingsページにアクセスし、「RSS Content」タブに切り替える必要があります。

WordPress RSS フィードの前または後にコンテンツを追加する

ここから、各RSSフィードアイテムの前後に表示したいコンテンツを追加できます。

スマートタグを使用して、カスタムコンテンツにリンクやその他のメタデータを追加できます。

AIOSEOのデフォルトRSSフッター

カスタムコンテンツを好きなようにフォーマットするために、基本的なHTMLを使用することもできます。

変更に満足したら、変更を保存ボタンをクリックすることを忘れないでください。

All in One SEOは、各RSSフィードアイテムにカスタムコンテンツを追加するようになります。

コードを使用してWordPress RSSフィードにコンテンツを追加する

上記で最初に言及した方法は、WordPressのRSSフィードにカスタムコンテンツを追加する最も簡単な方法です。ただし、これはWordPressフィードのすべてのアイテムにコンテンツを追加します。

特定の投稿、選択したカテゴリの投稿にコンテンツを追加したり、RSSフィードにカスタムメタデータを表示したりしたい場合はどうすればよいですか?

次のいくつかのステップは、カスタムコードスニペットを使用してRSSフィードにコンテンツを柔軟に追加するのに役立ちます。これは初心者にはお勧めできません。

次のコードスニペットを個別に、または組み合わせて使用することで、フィードをさまざまな方法でカスタマイズできます。たとえば、あるスニペットを使用して特集画像を追加し、別のスニペットを使用して特定のカテゴリの投稿に特別なメッセージを追加できます。

これらのコードスニペットは、テーマのfunctions.phpファイルに直接追加できます。しかし、WordPressサイトを壊すことなくカスタムコードをWordPressに追加する最も簡単な方法であるWPCodeプラグインの使用を推奨します。

ライブラリにはいくつかのRSSスニペットも含まれており、数回のクリックで有効化できます。

WordPressプラグイン「WPCode」を無料でインストールして有効化するには、ガイドの指示に従ってください。ガイドは「WordPressプラグインのインストール方法 – 初心者向けステップバイステップ」をご覧ください。

WordPress RSSフィードにカスタムコンテンツを手動で追加する例をいくつか試してみましょう。

1.カスタムフィールドからWordPress RSSフィードにデータを追加する

カスタムフィールドを使用すると、WordPressの投稿やページに追加のメタデータを追加できます。ただし、このメタデータはデフォルトではRSSフィードに含まれていません。

カスタムフィールドメタボックスが現在表示されています

WordPress RSSフィードでカスタムフィールドデータを取得して表示するために使用できるスニペットを次に示します。

function wpb_rsstutorial_customfield($content) {
global $wp_query;
$postid = $wp_query->post->ID;
$custom_metadata = get_post_meta($postid, 'my_custom_field', true);
if(is_feed()) {
if($custom_metadata !== '') {
// Display custom field data below content
$content = $content."<br /><br /><div>".$custom_metadata."</div>
";
}
else {
$content = $content;
}
}
return $content;
}
add_filter('the_excerpt_rss', 'wpb_rsstutorial_customfield');
add_filter('the_content', 'wpb_rsstutorial_customfield');

このコードは、投稿に「guest_post」または「sponsored_post」というカスタムフィールドがあるかどうかを確認します。いずれかが見つかった場合、「Guest Post: 」または「Sponsored Post: 」というテキストをRSSフィードの投稿タイトルの先頭に追加します。

2. RSS投稿タイトルへの追加テキストの追加

一部の投稿のタイトルに、RSSフィードで追加のテキストを表示したいですか?たとえば、通常の記事とゲスト投稿またはスポンサー投稿を区別したい場合があります。

RSSフィードの投稿タイトルにカスタムコンテンツを追加する方法を以下に示します。

例1:カスタムフィールドのデータをRSSフィードの投稿タイトルに追加する

まず、表示したいコンテンツをカスタムフィールドとして保存します。例えば、guest_postやsponsored_postといったカスタムフィールドを追加できます。

その後、次のコードをウェブサイトに追加できます。

function wpb_rsstutorial_addtitle($content) {
global $wp_query;
$postid = $wp_query->post->ID;
$gpost = get_post_meta($postid, 'guest_post', true);
$spost = get_post_meta($postid, 'sponsored_post', true);
 
if($gpost !== '') {
$content = 'Guest Post: '.$content;
}
elseif ($spost !== ''){
$content = 'Sponsored Post: '.$content;
}
else {
$content = $content;
}
return $content;
}
add_filter('the_title_rss', 'wpb_rsstutorial_addtitle');

このコードはカスタムフィールドを探すだけです。カスタムフィールドが空でない場合、RSSフィードの投稿タイトルにカスタムフィールドの値を追加します。

例2:RSSフィードの投稿タイトルにカテゴリ名を追加する

この例では、投稿タイトルにカテゴリ名を表示します。

次のコードをウェブサイトに追加するだけです:

function wpb_rsstutorial_titlecat($content) {
$postcat = "";
foreach((get_the_category()) as $cat) {
$postcat .= ' ('.$cat->cat_name . ')';
}
$content = $content.$postcat;
return $content;
}
add_filter('the_title_rss', 'wpb_rsstutorial_titlecat');

これで、投稿タイトルとともにカテゴリがRSSフィードに表示されます。たとえば、「ベイエリアのトップ新レストラン(ニュース)(旅行)」のように、ニュースと旅行がカテゴリです。

3. 特定のタグまたはカテゴリを持つ投稿にカスタムコンテンツを追加する

さて、カスタムコンテンツを追加したいが、特定のタグまたはカテゴリに属する投稿に対してのみ追加したいと仮定しましょう。

以下のコードは、特定のカテゴリやタグに分類された投稿にコンテンツを簡単に追加するのに役立ちます:

function wpb_rsstutorial_taxonomies($content) {
 
if( is_feed() ){
 
// Check for posts filed under these categories
if ( has_term( array( 'travel', 'news' ), 'category' ) ) {
 
$content = $content."<br /><br />For special offers please visit our website"; 
 
}
}
return $content;
}
add_filter('the_excerpt_rss', 'wpb_rsstutorial_taxonomies');
add_filter('the_content', 'wpb_rsstutorial_taxonomies');

このコードを変更して、タグやカスタムタクソノミーを対象にすることができます。

特定のタグをターゲットにする例を以下に示します。

function wpb_rsstutorial_taxonomies($content) {
 
if( is_feed() ){
 
// Check for posts filed under these categories
if ( has_term( array( 'holidays', 'blackfriday' ), 'post_tag' ) ) {
 
$content = $content."<br /><br />For special offers please visit our website"; 
 
}
}
return $content;
}
add_filter('the_excerpt_rss', 'wpb_rsstutorial_taxonomies');
add_filter('the_content', 'wpb_rsstutorial_taxonomies');

デフォルトでは、WordPress RSS フィードには投稿のアイキャッチ画像が表示されません。WPCode のライブラリに含まれるコードスニペットを使用することで、簡単に画像を追加できます。

コードスニペット » + スニペットを追加に移動し、ライブラリで「rss」を検索してください。

次に、「アイキャッチ画像をRSSフィードに追加」というスニペットにカーソルを合わせ、「スニペットを使用」ボタンをクリックします。

WPCodeには、RSSフィードにアイキャッチ画像を追加するスニペットが含まれています

次に、「アクティブ」トグルをオンの位置に切り替え、「更新」ボタンをクリックするだけです。

RSSフィードにアイキャッチ画像が追加されました。

アクティブスイッチをオンにする

RSSフィードにフィーチャー画像を手動で追加することもできます。

使用できるコードは次のとおりです。

function wpb_rsstutorial_featuredimage($content) {
global $post;
if(has_post_thumbnail($post->ID)) {
$content = '<p>' . get_the_post_thumbnail($post->ID) .
'</p>' . get_the_content();
}
return $content;
}
add_filter('the_excerpt_rss', 'wpb_rsstutorial_featuredimage');
add_filter('the_content_feed', 'wpb_rsstutorial_featuredimage');

このコードは、投稿にサムネイル(アイキャッチ画像)があるかどうかを確認し、投稿の残りのコンテンツと一緒に表示します。

WordPress RSSフィードのカスタマイズに関するよくある質問

WordPressのRSSフィードの管理と変更の最善の方法について、よく質問を受けます。以下に、よく受ける質問への回答をいくつか示します。

1. WordPress RSS フィードは何に使用されますか?

RSS(Really Simple Syndication)フィードを使用すると、FeedlyのようなRSSフィードリーダーを使ってユーザーがコンテンツを購読できます。また、他のプラットフォーム間でコンテンツを配信することもでき、コンテンツマーケティングを自動化し、より幅広いオーディエンスにリーチするのに役立ちます。

2. WordPressのRSSフィードURLはどこで見つけられますか?

通常、WordPressのRSSフィードは、ウェブサイトのドメイン名の末尾に「/feed/」を追加することで見つけることができます。たとえば、サイトがwww.example.comの場合、フィードURLはwww.example.com/feed/になります。

3. RSSフィードをカスタマイズする必要があるのはなぜですか?

RSSフィードをカスタマイズすると、コンテンツを管理できます。バックリンクを元の投稿に追加することでコンテンツのスクレイピングを防ぎ、特別なプロモーションを追加でき、コンテンツが表示されるすべての場所でブランドの一貫性を確保できます。

4. RSSフィードで完全な投稿を表示するのと、概要を表示するのとではどちらが良いですか?

完全な投稿ではなく、要約を表示することをお勧めします。これにより、購読者は完全な記事を読むためにあなたのウェブサイトを訪れるようになり、ページビューが増加し、SEOに役立ちます。この設定は、WordPressの設定 » 表示設定で変更できます。

WordPress RSSフィードのカスタマイズに関するボーナスリソース

この記事が、WordPress RSSフィードにコンテンツを追加する方法を学ぶのに役立ったことを願っています。WordPressフィードをさらに最適化するのに役立つリソースもいくつかご覧ください。

この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterFacebookでもフォローできます。

開示:当社のコンテンツは読者によってサポートされています。これは、当社のリンクの一部をクリックすると、当社が手数料を得る可能性があることを意味します。WPBeginnerがどのように資金提供されているか、それがなぜ重要か、そしてどのように私たちをサポートできるかについては、こちらをご覧ください。当社の編集プロセスはこちらです。

究極のWordPressツールキット

無料のツールキットにアクセスしましょう - すべてのプロフェッショナルが持つべきWordPress関連の製品とリソースのコレクションです!

読者とのインタラクション

40 CommentsLeave a Reply

  1. 素晴らしい記事です。私はサブドメインにブログを持ち、メインドメインに個人のポートフォリオを持っています。メインドメインにRSSアグリゲーターを追加して、ポートフォリオに最新のブログ投稿を表示できるようにし、ポートフォリオからブログへの誘導を促進しました。この記事のおかげで、RSSフィードを希望通りにカスタマイズでき、ポートフォリオとブログの間に素晴らしい連携ができました。ありがとうございます。

  2. RSSフィードにカスタムコンテンツを追加するさまざまな方法を概説していただきありがとうございます。プラグインまたはコードスニペットを使用するオプションにより、より幅広いユーザーがアクセスできるようになります。WordPressのRSSフィードをここまでカスタマイズできるとは知りませんでした。これにより、読者にとってより魅力的なフィードを作成するための多くの可能性が開かれます。

  3. 皆さん、こんにちは。デフォルトでRSS投稿にアイキャッチ画像を追加しようとしていますが、2つの質問があります。

    1. コードを正確にどこに追加すればよいですか?
    2. コードの中に「function wpb_rsstutorial」とありますが、これは私たちの独自のパラメータに置き換えるべきですか、それともコードの他の部分も同様ですか?

    ご協力いただきありがとうございます!

    • 「コードを使用してWordPress RSSフィードにコンテンツを追加する」セクションを確認すると、ガイドのコードを追加するさまざまな方法をカバーしています。

      関数名については、変更したい場合を除き、変更する必要はありません。変更する場合は、元の名前のすべてのインスタンスを新しい名前に変更するようにしてください。

      管理者

    • 現時点では、RSSフィードの各段落の後にコンテンツを追加することは推奨していません。

      管理者

  4. RSSフィードには、「コメントを残すにはWPBeginnerの[投稿タイトル]をご覧ください。」という非常にシンプルなメッセージが表示されています。

    これを再現するにはどうすればよいですか?提供されたコードで、「coolcustom」を変更する必要があると思われますが、具体的にどれを編集すればよいですか?

  5. こんにちは。
    投稿に以下がある場合:
    [text1]テキスト1[text1]
    [text2]テキスト2[text2]

    RSSのみでtext2ショートコードを返すにはどうすればよいですか?

  6. Digg DiggプラグインのボタンをRSSフィードの下部に追加するために、3番目のオプションを使用しようとしています。PHPを単なるテキストではなく、コンテンツを組み込むための編集に関する提案はありますか?

  7. I am trying to use this to implement CSS disclosure buttons in my feed, but I *cannot* figure out how to get it into the description. I have code of what I tried (2 different functions for the excerpt & the post). i hate how the buttons show up in the excerpt and i don’t think it’s necessary. help? :)

  8. この情報を共有していただき、本当に感謝しています。私のサイトに実装しました…あなたが受け取る「週刊」メールでそれがどのように見えるかがいつも本当に気に入っていました。

    とてもプロフェッショナルに見えますし、もちろんコンテンツスクレイパー(泥棒)に対抗するのに役立つでしょう。

    再度、よく書かれたコードと非常に役立つアドバイスです。ありがとうございます!

  9. 素晴らしい情報です!質問が1つあります…  #1 WordPress RSSフッターにカスタムフィールドを追加する で、何らかの理由でコンテンツ/カスタムフィールドが2回表示されます。その理由をご存知ですか?

    • なぜかは不明です。コードを確認しないと分かりません。クライアントのサイトにインストールした際には、私たちのコードは正常に機能したようです。

  10. 私のサイトで、誰かが「お問い合わせ」フォームに入力すると、その人の個人情報すべてがRSSフィードに表示され、どのユーザーでも見ることができるという問題があります。
    助けてください!!!!!
     

  11. 今、わかりました。「$content = $content.<br /><br /><div>”.$coolcustom.”</div>n”;」の行を編集しました。完璧です!

  12. 追加テキストを追加するとうまく機能しますが、RSSでそのカスタムフィールド(例:「coolcustom」)のみを投稿の説明として表示したいと考えています。投稿の実際のテキストは削除したいです。それは可能ですか?

  13. こんにちは。投稿の「フル」RSSフィードに2つのフィールドを追加したいのですが。1つは投稿の著者を、もう1つは投稿が含まれるタクソノミーのリスト(もしあれば)を表示するものです。たとえば、著者がJohnRで、投稿がNFL、Raiders、Jetsのタクソノミーに含まれている場合、RSSには次の2つの追加フィールドが含まれます。

    JohnR
    NFL、レイダース、ジェッツ

    これを行うための正しい方向性を示してくれる人はいますか?

    – Scot

  14. シェアしていただきありがとうございます…

    あなたのチュートリアルは、Technorati のクレームトークンを検証するのに役立ちました!うまくいきました。効果的な検証方法を探していましたが、それについて議論している記事を見つけました。しかし、ほとんどは効果がありませんでした。そして最後に、各フッター投稿の RSS フィードにテキストを追加する方法を考えていました。素晴らしい!あなたの記事を通して賢い方法を見つけました。ありがとうございます!!

  15. こんにちは。
    RSSにカスタムフィールドを追加するコードは素晴らしいですね!!!! ありがとうございます。
    フッターではなく、タイトルの上や下などにカスタムフィールドを表示する位置を編集する方法はありますか? "style"タグを追加してCSSを使用することは可能でしょうか?
    どうもありがとうございました。

  16. WordPress RSSフッターにカスタムフィールドを追加する:
    ありがとうございます。コードは完璧に動作しました。質問があります:カスタムフィールドをタイトルより前に表示するか、タイトルの直後に表示するにはどうすればよいですか?
    ここでコードを編集しようとしました:
    $content = $content.””.$coolcustom.”
    “;
    brタグを削除すると機能しますが、スタイルとCSSはどこに追加できますか?

    素晴らしい助けに感謝します

    • RSSがすべての異なるリーダーで機能するようにするには、インラインスタイルを使用する必要があります。以前に追加するには、$coolcustom.$contentを追加してから、好きな場所に引用符を使用してdivタグを追加します…

      管理者

  17. こんにちは、

    カスタムフィールドを使用して、RSSフィードから投稿を「除外」する方法を見つけようとしています。

    何かアイデアはありますか?

    よろしくお願いいたします。
    Robert

  18. こんにちは、チュートリアルありがとうございます。完璧に機能しました。ただ、ちょっとした質問があります。RSSフィードに余分なコンテンツを読み込ませた後(たとえばSafariで表示している場合)、実際にRSSフィードをウェブサイトに埋め込むと、その余分な情報が消えてしまいます。何か原因をご存知ですか?4日経っても解決していません。キャッシュも何度かクリアしましたがダメでした。よろしくお願いします!

  19. これまでのところ、ありがとうございます!RSSフィードにカスタムフィールドを追加する方法については、これまであまり見つけられませんでした。

    セクション1のコードで複数のカスタムフィールドを追加するのは難しいですか?イベントリストのウェブサイトがあり、RSSに表示したい各投稿に「会場」、「イベント日」、「住所」などのカスタムフィールドがあります。

      • すみません、私は少し初心者なのですが、複数のカスタムフィールドを取得するにはコードはどのようになりますか?これまでのところ、いくつかのコード構成を試しましたが、エラーが発生し続けています。ただし、1つのフィールドはうまく機能しています!

    • アジェイですが、あなたのプラグインではRSSテキストにカスタムフィールドを追加できますか?なぜなら、それはJoostのRSSフッタープラグインと全く同じ機能を持っているように見えるからです。これはこの記事が示しているものではありません。投稿ごとに異なるFTCテキストを表示する必要がある場合、あなたのプラグインやRSSフッターのようなプラグインは、すべての投稿に同じテキストを表示するため失敗します。これを使えば、異なる方法を設定できます。例えば、カスタムフィールドがある場合はこのように:それ以外の場合はデフォルトの著作権などを表示します。

      管理者

  20. これは素晴らしいですね。ちょっとしたカスタマイズを素早く行うのに役立つはずです。このような短いヒントは非常に役立ちます。ソーシャルメディアのアイコンを下に付けて、diggやsuなどに投稿する人も見かけました。

コメントを残す

コメントを残していただきありがとうございます。すべてのコメントは、当社のコメントポリシーに従ってモデレーションされますので、ご了承ください。メールアドレスは公開されません。名前フィールドにキーワードを使用しないでください。個人的で有意義な会話をしましょう。