カスタム投稿タイプをメインのWordPress RSSフィードに追加する方法

デフォルトでは、WordPressのRSSフィードには最近のブログ投稿のみが表示されます。しかし、他のコンテンツにカスタム投稿タイプを使用している場合、それらをメインRSSフィードにも含めたい場合があります。

カスタム投稿タイプを使用すると、通常の投稿やページを超えてコンテンツを拡張でき、共有できる内容に柔軟性が増します。RSSフィードに表示することは、購読者が貴重な更新を見逃さないようにするために重要です。

WPBeginnerでは、カスタム投稿タイプを使用してコンテンツをより効率的に整理しています。また、読者がすべてのコンテンツを1か所で見つけやすくするために、RSSフィードにも追加しました。このアプローチは、ユーザーエクスペリエンスを合理化し、可視性を向上させるのに役立ちました。

この記事では、カスタム投稿タイプをメインのWordPress RSSフィードに簡単に追加する方法を紹介します。

メインのWordPress RSSフィードにカスタム投稿タイプを追加する

WordPressのメインRSSフィードにカスタム投稿タイプを追加する理由

WordPressにはデフォルトで、投稿と固定ページという一般的に使用される2つのコンテンツタイプが用意されています。しかし、必要に応じてコンテンツタイプを追加するためにカスタム投稿タイプを作成することもできます。

例えば、映画レビューサイトでは、その特定のコンテンツタイプに適したカスタムタクソノミーを使用してカスタム投稿タイプを作成したい場合があります。

カスタム投稿タイプのプレビュー

これで、カスタム投稿タイプは独自のRSSフィードを持つことができ、ユーザーはカスタム投稿タイプのアーカイブURLの末尾に/feed/を追加することでアクセスできます。

https://example.com/custom-post-type/feed/
https://example.com/movies/feed/

ただし、これらのカスタム投稿タイプのフィードは簡単には見つけられません。

たとえば、ユーザーがフィードリーダーにウェブサイトのURLを入力すると、メインのWordPress RSSフィードの購読オプションのみが表示され、カスタム投稿タイプは含まれません。

メインRSSフィードを一番上に表示するフィードリーダー

これらの投稿タイプをRSSフィードに追加することで、ユーザーはWordPressサイトのすべてのコンテンツを購読しやすくなります。

さらに、カスタム投稿タイプをメインRSSフィードで検索エンジンにインデックスさせることで、ウェブサイトのSEOを改善することもできます。

それでは、カスタム投稿タイプをWordPressのメインRSSフィードに簡単に追加する方法を見てみましょう。2つの方法をカバーしますので、使用したい方法にジャンプするには以下のリンクを使用してください。

方法1:すべてのカスタム投稿タイプをWordPress RSSフィードに追加する

この方法は、カスタム投稿タイプをすべてWordPressのRSSフィードに追加したい場合に最適です。

WooCommerceのようなeコマースプラグインを使用している場合、この方法を使用すると、製品のカスタム投稿タイプをメインRSSフィードに含めることもできます。

テーマの functions.php ファイルにカスタムコードを追加することで、これを簡単に行うことができます。

ただし、コードを入力する際にわずかな間違いがあっただけでも、ウェブサイトにアクセスできなくなる可能性があることに注意してください。

そのため、サイトを壊すことなくカスタムコードを追加する最も簡単な方法であり、市場で最高のカスタムコードスニペットプラグインであるWPCodeを使用してウェブサイトにコードを追加することをお勧めします。

まず、無料のWPCodeプラグインをインストールして有効化する必要があります。詳細については、WordPressプラグインのインストール方法に関する初心者向けガイドをご覧ください。

注意: このチュートリアルでは、無料のWPCodeプラグインがあれば十分です。ただし、プレミアムWPCodeプラグインにアップグレードすると、クラウドベースのスニペットライブラリ、スマート条件付きロジック、コードリビジョンなどにアクセスできるようになります。

有効化したら、WordPress管理サイドバーから Code Snippets » + Add Snippet ページに移動してください。

ここから、「カスタムコードを追加(新規スニペット)」オプションの下にある「スニペットを使用」ボタンをクリックします。

新しいスニペットを追加

これにより、「カスタムスニペットの作成」ページに移動します。ここで、コードスニペットの名前を入力することから始めることができます。

その後、右側のドロップダウンメニューから「コードタイプ」として「PHPスニペット」を選択するだけです。

カスタム投稿タイプコードのコードタイプとしてPHPを選択する

次に、次のコードを「コードプレビュー」ボックスにコピーして貼り付ける必要があります。

このコードを使用すると、公開されているすべての投稿タイプをメインのWordPress RSSフィードに追加できます。

function myfeed_request($qv) {
if (isset($qv['feed']))
$qv['post_type'] = get_post_types();
return $qv;
}
add_filter('request', 'myfeed_request');

それが完了したら、「挿入」セクションまでスクロールダウンし、挿入方法として「自動挿入」を選択してください。

これで、スニペットをアクティブ化して保存すると、コードはウェブサイトで自動的に実行されます。

挿入方法を選択

その後、ページの上部に戻り、「非アクティブ」スイッチを「アクティブ」に切り替えます。

最後に、「スニペットを保存」ボタンをクリックするだけで、カスタムコードをウェブサイトに保存して実行できます。

WordPress RSSフィードにカスタム投稿タイプを追加するためのスニペットの保存

すべてのカスタム投稿タイプがメインのWordPress RSSフィードに追加されます。

コードが機能していることを確認するには、フィードリーダーにアクセスしてRSSフィードを確認できます。

このチュートリアルでは、RSSフィードやウェブサイトをFeedlyアカウントに追加し、コンテンツを簡単に整理し、リアルタイムで更新を受け取ることができるオンラインツールであるFeedlyを使用します。

そこに着いたら、「お気に入りのウェブサイトをフォローする」オプションの下にウェブサイトのURLを入力するだけです。

カスタム投稿タイプのコンテンツがWordPress RSSフィードに表示されるようになります。

WordPress RSSフィードを確認する

方法2:WordPress RSSフィードに特定のカスタム投稿タイプを追加する

特定のカスタム投稿タイプをメインのWordPress RSSフィードに追加したい場合は、この方法が適しています。

これを行うには、テーマの functions.php ファイルにカスタムコードを追加する必要があります。ただし、コードを入力する際にわずかなエラーでもウェブサイトが破損する可能性があることに注意してください。

そのため、代わりにWPCodeの使用をお勧めします。これは市場でNo.1のWordPressコードスニペットプラグインです。WPCodeを使用することは、WordPressウェブサイトにカスタムコードを追加する最も簡単で安全な方法です。

まず、無料のWPCodeプラグインをインストールして有効化する必要があります。詳細については、WordPressプラグインのインストール方法に関する初心者向けガイドをご覧ください。

注意: このチュートリアルでは、無料のWPCodeプラグインを使用できます。ただし、プレミアムWPCodeプラグインにアップグレードすると、クラウドベースのスニペットライブラリ、スマート条件付きロジック、コードリビジョンなどにアクセスできるようになります。

プラグインがアクティブになったら、WordPress管理サイドバーからコードスニペット » + スニペットを追加ページにアクセスします。

ここから、「カスタムコードを追加(新規スニペット)」オプションの下にある「スニペットを使用」ボタンをクリックします。

新しいスニペットを追加

次に、「カスタムスニペットを作成」ページにリダイレクトされます。ここで、コードスニペットの名前を入力することから始めることができます。

この名前はどこにも表示されず、識別目的でのみ使用されます。

次に、右側の「コードタイプ」ドロップダウンメニューで「PHPスニペット」オプションを選択します。

特定のカスタム投稿タイプのコードのコードタイプとしてのPHP

それが完了したら、次のコードを「コードプレビュー」ボックスにコピーして貼り付けます。

function myfeed_request($qv) {
    if (isset($qv['feed']) && !isset($qv['post_type']))
        $qv['post_type'] = array('post', 'movies', 'books');
    return $qv;
}
add_filter('request', 'myfeed_request');

コードを追加した後、コードの'['post_type']'と書かれている場所の隣にカスタム投稿タイプの名前を入力します。この例では、「post」、「movies」、「books」があります。

このカスタム投稿タイプは、メインのWordPress RSSフィードに追加されます。

カスタム投稿タイプをRSSフィードに追加するコードを貼り付ける

次に、「挿入」セクションまでスクロールダウンし、「自動挿入」設定を選択します。

カスタムコードは、有効化されるとWordPressウェブサイトで自動的に実行されるようになります。

挿入方法を選択

次に、ページの上部までスクロールバックし、「非アクティブ」スイッチを「アクティブ」に切り替える必要があります。

最後に、「スニペットを保存」ボタンをクリックして、コードをWordPressウェブサイトに保存して実行することを忘れないでください。

スニペットを保存する

カスタム投稿タイプが追加されたことを確認するには、Feedlyのようなフィードリーダーにアクセスする必要があります。

そこに着いたら、ウェブサイトのURLを入力してRSSフィードを検索するだけです。

カスタム投稿タイプのコンテンツがWordPress RSSフィードに表示されるようになります。

WordPress RSSフィードを確認する

ボーナス: 検索エンジンのランキングを向上させるRSSサイトマップを作成する

メインのRSSフィードにカスタム投稿タイプを追加したら、より多くの訪問者を引き付け、ウェブサイトへのトラフィックを送信するためにRSSサイトマップを作成する必要があります。

このサイトマップには最新のコンテンツが含まれ、Googleが検索結果でコンテンツをより新鮮に保ち、サイトのトラフィックを増加させるのに役立ちます。これを行うには、AIOSEOを使用できます。これは市場で最高のWordPress SEOプラグインです。

有効化したら、WordPressダッシュボードから All in One SEO » Sitemap ページにアクセスし、「RSSサイトマップ」タブに切り替えます。

ここで、「サイトマップを有効にする」トグルがすでにアクティブになっていることがわかります。

RSSサイトマップを有効にする

次に、「サイトマップ設定」セクションまでスクロールダウンします。ここで、RSSサイトマップに含めたい投稿と投稿タイプの数を追加できます。

その後、「すべての投稿タイプを含める」ボックスをチェックして、サイトのすべての投稿タイプのサイトマップを作成します。次に、「変更を保存」ボタンをクリックして設定を保存します。

「投稿タイプを含める」オプションを確認してください

これで、WordPressブログのRSSサイトマップが正常に作成されました。詳細については、WordPressにRSSサイトマップを追加する方法に関するチュートリアルを参照してください。

この記事が、カスタム投稿タイプをメインのWordPress RSSフィードに追加する方法を学ぶのに役立ったことを願っています。また、WordPressページの公開を停止する方法に関するガイドや、ウェブサイトのトラフィックを増やすための最高のWordPress RSSフィードプラグインのトップピックも参照してください。

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

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

究極のWordPressツールキット

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

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

43 CommentsLeave a Reply

  1. なんてこった!カスタム投稿がRSSフィードに入らないことを知りませんでした…このガイドをありがとうございます。すぐに修正します。

  2. こんにちは、

    カスタムタクソノミーを使用していないカスタム投稿タイプでは、これは機能しないようです。私たちは「category」タクソノミーを持つCPTを使用しています。これが機能しない理由ですか?

    例: mysite.com/feed?post_type=news&category=economy

    • カスタム投稿タイプでも機能するはずです。カスタム投稿タイプの正しい名前を追加していることを確認してください。

      管理者

  3. こんにちは
    ご指導ありがとうございます。

    サイトでeddを使用していますが、eddフィードを見たい場合、ダウンロードカテゴリとダウンロードタグはRSSフィードに表示されません。

    全く:カスタム投稿タイプで、フィードに投稿タイプカテゴリ、投稿タイプタグを追加するにはどうすればよいですか?

    デフォルトの投稿タイプ、カテゴリ、タグのデフォルトのWordPressフィードはきれいに表示されます。

    返信をお待ちしています。

  4. フィードは、カスタム投稿タイプの例であるexample.com/feed/?post_type=books専用のセクションに自動的に追加されます。RSSアイコンを追加して、前のリンクにリンクさせることができます。

  5. すべてのカスタム投稿タイプを含めたかったので、この最初のスニペットを使用しました。
    これには、Jetpackのお問い合わせフォームへの投稿も含まれていました!
    残念ながら、それに気づくのにしばらく時間がかかりました!

    配列で各投稿タイプを定義するために2番目のスニペットを使用したことで、問題が解決しました。

  6. こんにちは。
    CPTで問題が発生しています。
    他のCPTの中に、フィードにCPT「cpt1」を追加しましたが、cpt1がフィードに表示されません。
    cpt1だけをフィードに入れると、機能します。

    どんなご協力でも大変ありがたく思います。
    よろしくお願いいたします。

      • ちょっとお伺いしたいのですが、あなたのサイトの CPT は your-site.com/feed で見えますか?CPT と WPML を使用していますが、CPT は your-site.com/feed に表示されず、通常の投稿のみが表示されます。

        このコメントに従います。

        そして、私が選択したすべてのCPTはフィードリーダーに表示されますが、your-site.com/feedには表示されません。WPMLを無効にして再度有効にしても、URLには表示されません。CPTがフィードのURL(your-site.com/feed)に表示されるかどうか教えていただけると幸いです。

  7. フィードに含めたいカスタム投稿タイプの名前がわからない場合はどうなりますか(例2) – つまり、Webコミックがあり、そのカスタム投稿タイプが「webcomic_post」であることを知っていますが、ポートフォリオとWooCommerceストアの商品にも投稿を含めたいです。コードの最初のバージョンを使用すると、これらのアイテムはすべてフィードに表示され、除外したい他のものも表示されます。問題は、使用されているカスタム投稿タイプの名前がわからないこと、そしてそれを見つける方法がわからないことです。私は「product」と「portfolio」を試しましたが、うまくいきませんでした。私はWordPressの初心者なので、これが愚かな質問であれば申し訳ありません – どんな助けでも大歓迎です!

    • WordPressで、「ポートフォリオ」リンクにカーソルを合わせます。たとえば、左側のナビゲーションでこれを行います。これにより、すべてのポートフォリオアイテムを表示できるURLが表示されます。そのページに移動し、アドレスバーを見ると、そこにリストされている投稿タイプの名前が表示されます。

  8. こんにちは、これについてありがとうございます!このコードはページのどこに追加する必要がありますか?一番上ですか?一番下ですか?どうもありがとうございます!

  9. ありがとう、すぐにうまくいった迅速で簡単なヒントです。私は基本的に「投稿」がなく、カスタム投稿タイプが2つあるため、functions.phpを編集する前にフィードに何も表示されていませんでした。

    再度乾杯、Neil

  10. とても良いです!ありがとうございます!まさに必要としていたものです。そしてとてもシンプルです。

  11. 素晴らしいヒントです、驚くほどうまく機能します!

    WooCommerceフィードをメインブログのフィードにマージしたいのですが、再度ありがとうございます!

  12. この投稿は古いものだと認識していますが、今日役立ったので、ありがとうございます!Jetpackを使用しており、訪問者を恥ずかしい思いをさせたくない方へのヒントとして、最初の方法ではなく2番目の方法を使用してください!最初の方法は、「フィードバック」CPTをRSSフィードに公開しますが、これはサイトからのすべての問い合わせフォーム送信です。おっと!

  13. functions.php ファイルでの私の最後の変更:

    <code>

    /*———————————————————————————–*//* Add Post format in RSS/*———————————————————————————–*/ function myfeed_request($qv) { if (isset($qv[‘feed’])) $qv[‘post_type’] = get_post_types(array( ‘public’ => true ) ); return $qv;}add_filter(‘request’, ‘myfeed_request’);

    </code>

  14. get_post_types() の代わりに get_post_types( array( ‘public’ => true ) ) を使用する必要があります。これは、公開可能ではない投稿タイプをフィードに含めたくない場合があるためです。

  15. ありがとうございます。
    ここ数週間、あらゆる組み合わせを試しましたが、何も機能しません。FeedBurnerを使用していますが、それが問題でしょうか?

      • この機能を見つけて、このコード(すべてのカスタム投稿タイプを追加するための最初のもの)を実装したところ、カスタム投稿タイプをメインフィードに追加するのにうまくいきました。

        しかし、私のページもフィードに追加されてしまいました。これは投稿のみを追加し、ページは追加しないはずだと思っていましたか?

        ページを除外するにはどうすればよいですか?

返信する

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