デフォルトでは、WordPressのRSSフィードには最近のブログ投稿のみが表示されます。しかし、他のコンテンツにカスタム投稿タイプを使用している場合、それらをメインRSSフィードにも含めたい場合があります。
カスタム投稿タイプを使用すると、通常の投稿やページを超えてコンテンツを拡張でき、共有できる内容に柔軟性が増します。RSSフィードに表示することは、購読者が貴重な更新を見逃さないようにするために重要です。
WPBeginnerでは、カスタム投稿タイプを使用してコンテンツをより効率的に整理しています。また、読者がすべてのコンテンツを1か所で見つけやすくするために、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フィードに追加することで、ユーザーはWordPressサイトのすべてのコンテンツを購読しやすくなります。
さらに、カスタム投稿タイプをメインRSSフィードで検索エンジンにインデックスさせることで、ウェブサイトのSEOを改善することもできます。
それでは、カスタム投稿タイプをWordPressのメインRSSフィードに簡単に追加する方法を見てみましょう。2つの方法をカバーしますので、使用したい方法にジャンプするには以下のリンクを使用してください。
- 方法1:すべてのカスタム投稿タイプをWordPress RSSフィードに追加する
- 方法2:WordPress RSSフィードに特定のカスタム投稿タイプを追加する
- ボーナス: 検索エンジンのランキングを向上させるRSSサイトマップを作成する
方法1:すべてのカスタム投稿タイプをWordPress RSSフィードに追加する
この方法は、カスタム投稿タイプをすべてWordPressのRSSフィードに追加したい場合に最適です。
WooCommerceのようなeコマースプラグインを使用している場合、この方法を使用すると、製品のカスタム投稿タイプをメインRSSフィードに含めることもできます。
テーマの functions.php ファイルにカスタムコードを追加することで、これを簡単に行うことができます。
ただし、コードを入力する際にわずかな間違いがあっただけでも、ウェブサイトにアクセスできなくなる可能性があることに注意してください。
そのため、サイトを壊すことなくカスタムコードを追加する最も簡単な方法であり、市場で最高のカスタムコードスニペットプラグインであるWPCodeを使用してウェブサイトにコードを追加することをお勧めします。
まず、無料のWPCodeプラグインをインストールして有効化する必要があります。詳細については、WordPressプラグインのインストール方法に関する初心者向けガイドをご覧ください。
注意: このチュートリアルでは、無料のWPCodeプラグインがあれば十分です。ただし、プレミアムWPCodeプラグインにアップグレードすると、クラウドベースのスニペットライブラリ、スマート条件付きロジック、コードリビジョンなどにアクセスできるようになります。
有効化したら、WordPress管理サイドバーから Code Snippets » + Add Snippet ページに移動してください。
ここから、「カスタムコードを追加(新規スニペット)」オプションの下にある「スニペットを使用」ボタンをクリックします。

これにより、「カスタムスニペットの作成」ページに移動します。ここで、コードスニペットの名前を入力することから始めることができます。
その後、右側のドロップダウンメニューから「コードタイプ」として「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フィードに追加されます。
コードが機能していることを確認するには、フィードリーダーにアクセスしてRSSフィードを確認できます。
このチュートリアルでは、RSSフィードやウェブサイトをFeedlyアカウントに追加し、コンテンツを簡単に整理し、リアルタイムで更新を受け取ることができるオンラインツールであるFeedlyを使用します。
そこに着いたら、「お気に入りのウェブサイトをフォローする」オプションの下にウェブサイトのURLを入力するだけです。
カスタム投稿タイプのコンテンツがWordPress RSSフィードに表示されるようになります。

方法2:WordPress RSSフィードに特定のカスタム投稿タイプを追加する
特定のカスタム投稿タイプをメインのWordPress RSSフィードに追加したい場合は、この方法が適しています。
これを行うには、テーマの functions.php ファイルにカスタムコードを追加する必要があります。ただし、コードを入力する際にわずかなエラーでもウェブサイトが破損する可能性があることに注意してください。
そのため、代わりにWPCodeの使用をお勧めします。これは市場でNo.1のWordPressコードスニペットプラグインです。WPCodeを使用することは、WordPressウェブサイトにカスタムコードを追加する最も簡単で安全な方法です。
まず、無料のWPCodeプラグインをインストールして有効化する必要があります。詳細については、WordPressプラグインのインストール方法に関する初心者向けガイドをご覧ください。
注意: このチュートリアルでは、無料のWPCodeプラグインを使用できます。ただし、プレミアムWPCodeプラグインにアップグレードすると、クラウドベースのスニペットライブラリ、スマート条件付きロジック、コードリビジョンなどにアクセスできるようになります。
プラグインがアクティブになったら、WordPress管理サイドバーからコードスニペット » + スニペットを追加ページにアクセスします。
ここから、「カスタムコードを追加(新規スニペット)」オプションの下にある「スニペットを使用」ボタンをクリックします。

次に、「カスタムスニペットを作成」ページにリダイレクトされます。ここで、コードスニペットの名前を入力することから始めることができます。
この名前はどこにも表示されず、識別目的でのみ使用されます。
次に、右側の「コードタイプ」ドロップダウンメニューで「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フィードに追加されます。

次に、「挿入」セクションまでスクロールダウンし、「自動挿入」設定を選択します。
カスタムコードは、有効化されるとWordPressウェブサイトで自動的に実行されるようになります。

次に、ページの上部までスクロールバックし、「非アクティブ」スイッチを「アクティブ」に切り替える必要があります。
最後に、「スニペットを保存」ボタンをクリックして、コードをWordPressウェブサイトに保存して実行することを忘れないでください。

カスタム投稿タイプが追加されたことを確認するには、Feedlyのようなフィードリーダーにアクセスする必要があります。
そこに着いたら、ウェブサイトのURLを入力してRSSフィードを検索するだけです。
カスタム投稿タイプのコンテンツがWordPress RSSフィードに表示されるようになります。

ボーナス: 検索エンジンのランキングを向上させるRSSサイトマップを作成する
メインのRSSフィードにカスタム投稿タイプを追加したら、より多くの訪問者を引き付け、ウェブサイトへのトラフィックを送信するためにRSSサイトマップを作成する必要があります。
このサイトマップには最新のコンテンツが含まれ、Googleが検索結果でコンテンツをより新鮮に保ち、サイトのトラフィックを増加させるのに役立ちます。これを行うには、AIOSEOを使用できます。これは市場で最高のWordPress SEOプラグインです。
有効化したら、WordPressダッシュボードから All in One SEO » Sitemap ページにアクセスし、「RSSサイトマップ」タブに切り替えます。
ここで、「サイトマップを有効にする」トグルがすでにアクティブになっていることがわかります。

次に、「サイトマップ設定」セクションまでスクロールダウンします。ここで、RSSサイトマップに含めたい投稿と投稿タイプの数を追加できます。
その後、「すべての投稿タイプを含める」ボックスをチェックして、サイトのすべての投稿タイプのサイトマップを作成します。次に、「変更を保存」ボタンをクリックして設定を保存します。

これで、WordPressブログのRSSサイトマップが正常に作成されました。詳細については、WordPressにRSSサイトマップを追加する方法に関するチュートリアルを参照してください。
この記事が、カスタム投稿タイプをメインのWordPress RSSフィードに追加する方法を学ぶのに役立ったことを願っています。また、WordPressページの公開を停止する方法に関するガイドや、ウェブサイトのトラフィックを増やすための最高のWordPress RSSフィードプラグインのトップピックも参照してください。
この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterやFacebookでもフォローできます。
ラルフ
なんてこった!カスタム投稿がRSSフィードに入らないことを知りませんでした…このガイドをありがとうございます。すぐに修正します。
WPBeginnerサポート
Glad we could bring that to your attention
管理者
Aidan
こんにちは、
カスタムタクソノミーを使用していないカスタム投稿タイプでは、これは機能しないようです。私たちは「category」タクソノミーを持つCPTを使用しています。これが機能しない理由ですか?
例: mysite.com/feed?post_type=news&category=economy
WPBeginnerサポート
カスタム投稿タイプでも機能するはずです。カスタム投稿タイプの正しい名前を追加していることを確認してください。
管理者
Amar
私にはうまくいきました。ありがとう!
WPBeginnerサポート
Glad our article was helpful
管理者
アリジット・ビスワス
うまくいきました!ありがとうございます。
Renier Delport
いつも助かります!
ReZa
こんにちは
ご指導ありがとうございます。
サイトでeddを使用していますが、eddフィードを見たい場合、ダウンロードカテゴリとダウンロードタグはRSSフィードに表示されません。
全く:カスタム投稿タイプで、フィードに投稿タイプカテゴリ、投稿タイプタグを追加するにはどうすればよいですか?
デフォルトの投稿タイプ、カテゴリ、タグのデフォルトのWordPressフィードはきれいに表示されます。
返信をお待ちしています。
サミュエル
フィードは、カスタム投稿タイプの例であるexample.com/feed/?post_type=books専用のセクションに自動的に追加されます。RSSアイコンを追加して、前のリンクにリンクさせることができます。
Gary
コードは、「デフォルト投稿タイプ」の投稿を少なくとも1つ作成するまで機能しませんでした。
Trieu To
フィード内の投稿タイプから投稿を除外したいのですが、どうすればよいですか?
ルーベン
すべてのカスタム投稿タイプを含めたかったので、この最初のスニペットを使用しました。
これには、Jetpackのお問い合わせフォームへの投稿も含まれていました!
残念ながら、それに気づくのにしばらく時間がかかりました!
配列で各投稿タイプを定義するために2番目のスニペットを使用したことで、問題が解決しました。
whoaloic
こんにちは。
CPTで問題が発生しています。
他のCPTの中に、フィードにCPT「cpt1」を追加しましたが、cpt1がフィードに表示されません。
cpt1だけをフィードに入れると、機能します。
どんなご協力でも大変ありがたく思います。
よろしくお願いいたします。
whoaloic
WPMLを無効化してから再度有効化すると、機能します。
JMarqz
ちょっとお伺いしたいのですが、あなたのサイトの 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)に表示されるかどうか教えていただけると幸いです。
チャック・ウェロン
フィードに含めたいカスタム投稿タイプの名前がわからない場合はどうなりますか(例2) – つまり、Webコミックがあり、そのカスタム投稿タイプが「webcomic_post」であることを知っていますが、ポートフォリオとWooCommerceストアの商品にも投稿を含めたいです。コードの最初のバージョンを使用すると、これらのアイテムはすべてフィードに表示され、除外したい他のものも表示されます。問題は、使用されているカスタム投稿タイプの名前がわからないこと、そしてそれを見つける方法がわからないことです。私は「product」と「portfolio」を試しましたが、うまくいきませんでした。私はWordPressの初心者なので、これが愚かな質問であれば申し訳ありません – どんな助けでも大歓迎です!
Nathan
WordPressで、「ポートフォリオ」リンクにカーソルを合わせます。たとえば、左側のナビゲーションでこれを行います。これにより、すべてのポートフォリオアイテムを表示できるURLが表示されます。そのページに移動し、アドレスバーを見ると、そこにリストされている投稿タイプの名前が表示されます。
Ziacinzia
こんにちは、コードはどこに正確に入れるべきか教えていただけますか?ありがとうございます
ハサン・シャハザド
コードはfunctions.phpテーマファイルの末尾に配置する必要があります。
Alex Leonard
Thanks for this – set me in the right direction for a couple of things
Kasey
こんにちは、これについてありがとうございます!このコードはページのどこに追加する必要がありますか?一番上ですか?一番下ですか?どうもありがとうございます!
Moaz
worked like a charm ! thnx
Neil Curtis
ありがとう、すぐにうまくいった迅速で簡単なヒントです。私は基本的に「投稿」がなく、カスタム投稿タイプが2つあるため、functions.phpを編集する前にフィードに何も表示されていませんでした。
再度乾杯、Neil
マイク
ありがとうございます!!!
Sussie T
とても良いです!ありがとうございます!まさに必要としていたものです。そしてとてもシンプルです。
Pranjal
素晴らしいヒントです、驚くほどうまく機能します!
WooCommerceフィードをメインブログのフィードにマージしたいのですが、再度ありがとうございます!
Colin
Boom. This just worked perfectly for me, thankyou thankyou thankyou
ユルゲン
ありがとう
まさに必要としていたものです
Luke Rumley
この投稿は古いものだと認識していますが、今日役立ったので、ありがとうございます!Jetpackを使用しており、訪問者を恥ずかしい思いをさせたくない方へのヒントとして、最初の方法ではなく2番目の方法を使用してください!最初の方法は、「フィードバック」CPTをRSSフィードに公開しますが、これはサイトからのすべての問い合わせフォーム送信です。おっと!
Ami
こちらも+1です。うまくいきました、ありがとうございます!
MoiMM
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>
navjotjsingh
get_post_types() の代わりに get_post_types( array( ‘public’ => true ) ) を使用する必要があります。これは、公開可能ではない投稿タイプをフィードに含めたくない場合があるためです。
Luke Rumley
ああ、それは素晴らしい指摘ですね!私の間違いはここにあります:http://wordpress.org/support/topic/plugin-jetpack-by-wordpresscom-feedback-custom-post-type-is-created-after-activating-jetpack?replies=3#post-3799791
closemarketing
ナイスハック!
Zeeshan Hamid
ありがとうございます。
ここ数週間、あらゆる組み合わせを試しましたが、何も機能しません。FeedBurnerを使用していますが、それが問題でしょうか?
Yotsugi
こちらをご覧ください:
http://wordpress.org/support/topic/update-not-show-a-feed-after-publish-a-custom-post-type?replies=3
アントン
このチュートリアルでは、同様の方法でこれを達成する方法を示しており、各投稿タイプを指定する必要はありません – http://www.ballyhooblog.com/add-custom-post-types-wordpress-main-feed/
m
「ページ」も追加して、フィードにもページを含めることはできますか?
編集スタッフ
はい。ページはそれ自身のカスタム投稿タイプ「page」です。したがって、他のカスタム投稿タイプと一緒にそれらを追加してください。
管理者
Adam W. Warner
この機能を見つけて、このコード(すべてのカスタム投稿タイプを追加するための最初のもの)を実装したところ、カスタム投稿タイプをメインフィードに追加するのにうまくいきました。
しかし、私のページもフィードに追加されてしまいました。これは投稿のみを追加し、ページは追加しないはずだと思っていましたか?
ページを除外するにはどうすればよいですか?
ahmed sayed
より多くの助言やページ用のコードを提供していただけますか?
ありがとう
チャック
functionsでそのコードを実行すると、ホワイトスクリーンの死が発生しました。理由を調べています…