2026年10月18日
2026年10月18日
WordPress のフィード(RSS)を確認する方法|URL の一覧・ブラウザーと curl での確認・表示されないときの原因と対処
WordPress のフィードを確認するには、サイトの URL の末尾に /feed/ を付けて開くだけです。たとえば https://example.com/feed/ が RSS 2.0 のフィードで、WordPress はこれを含む複数のフィードを設定なしで自動生成しています。表示されない・エラーになる場合は、ほとんどがテーマやプラグインの PHP ファイルの余分な出力、フィードを無効化するプラグイン、キャッシュのどれかです。
結論を先にまとめます。
- WordPress のフィードは、サイト全体・コメント・カテゴリー・タグ・投稿者・検索結果・各投稿のコメント、の単位で自動的にあります。URL の末尾に
/feed/を付ける形が基本です。 - 確認はブラウザーで開くか、
curl -IでContent-Type: application/rss+xmlが返ることを見ます。構文は W3C の Feed Validation Service で検証できます。 - 「XML 宣言が許可されるのは、文書の先頭のみです」というエラーは、PHP ファイルの
?>の後の空行や、UTF-8 の BOM など、XML の前に余分な文字が出力されているのが原因です。 - フィードに載せる件数と、全文か抜粋かは 設定 → 表示設定 で変えられます。
WordPress が自動で出すフィードの URL
パーマリンク設定が「基本」以外(投稿名など)のサイトでの URL です。「基本」のままのサイトでは、?feed=rss2 のようなクエリ形式になります(例: https://example.com/?feed=rss2)。どちらの形式でも、WordPress は同じ内容を返します。
| 対象 | URL の形 | 形式 |
|---|---|---|
| サイト全体(投稿) | /feed/ |
RSS 2.0 |
| サイト全体(Atom) | /feed/atom/ |
Atom |
| サイト全体(RDF) | /feed/rdf/ |
RSS 1.0 / RDF |
| サイト全体のコメント | /comments/feed/ |
RSS 2.0 |
| カテゴリー | /category/カテゴリースラッグ/feed/ |
RSS 2.0 |
| タグ | /tag/タグスラッグ/feed/ |
RSS 2.0 |
| 投稿者 | /author/ユーザー名/feed/ |
RSS 2.0 |
| サイト内検索の結果 | /?s=検索語&feed=rss2 |
RSS 2.0 |
| 投稿 1 件のコメント | /投稿スラッグ/feed/ |
RSS 2.0 |
/feed/rss/(RSS 0.92)は、現在の WordPress では RSS 2.0 のフィードへリダイレクトされます。カスタム投稿タイプには /feed/?post_type=タイプ名 の形で取り出せます。
テーマが add_theme_support( 'automatic-feed-links' ) を宣言していれば、ページの <head> にこれらのフィードへの <link rel="alternate" type="application/rss+xml"> が出力され、フィードリーダーが URL を自動検出できます。ほとんどの現行テーマは宣言しています。
手順 1: ブラウザーで開いて確認する
フィードの URL をブラウザーで開きます。ブラウザーによって、XML がそのまま表示される、整形して表示される、ダウンロードになる、と見え方は違いますが、XML が返っていれば問題ありません。
見るポイントは次の 3 つです。
- 先頭が
<?xml version="1.0" encoding="UTF-8"?>で始まっているか。 <channel>の中に<title>と<link>があり、<item>が設定した件数だけ並んでいるか。- 最新の投稿が含まれているか(含まれていなければキャッシュの可能性)。
手順 2: curl でヘッダーと先頭を確認する
ブラウザーの表示に惑わされないよう、コマンドラインから確かめる方法です。
# ヘッダーだけ。200 と application/rss+xml が返るか
curl -sI https://example.com/feed/ | grep -i -E "^HTTP|content-type"
# 先頭 200 バイト。<?xml より前に空行や文字が無いか
curl -s https://example.com/feed/ | head -c 200
# 先頭をバイト単位で見る。EF BB BF(BOM)や 0A(改行)が <?xml の前に無いか
curl -s https://example.com/feed/ | head -c 16 | xxd
正常なら、1 つ目は HTTP/2 200 と content-type: application/rss+xml; charset=UTF-8、2 つ目は <?xml から始まる出力になります。<?xml の前に何かが出ていたら、手順 4 の「余分な出力」が原因です。
手順 3: W3C の Feed Validation Service で検証する
W3C が提供する Feed Validation Service に、フィードの URL を入れるか内容を貼り付けると、RSS・Atom の構文を検証してくれます。フィードリーダーで「読み込めない」と言われたときに、どの行が原因かを示してくれるので、手順 4 の前に試す価値があります。
手順 4: 表示されないときの原因と対処
| 症状 | 原因として多いもの | 対処 | |
|---|---|---|---|
| 「XML 宣言が許可されるのは、文書の先頭のみです」「このページには XML 宣言の前に…」 | テーマの functions.php やプラグインの PHP で、閉じタグ ?> の後に空行や空白がある。ファイルが BOM 付き UTF-8 で保存されている |
手順 2 の `head -c 16 \ | xxd で先頭の余分な文字を特定し、該当 PHP ファイルの末尾の空行を消す、または BOM なしで保存し直す。閉じタグ ?>` 自体を書かないのが WordPress の慣例 |
| 404 になる | フィードを無効化するプラグイン(Disable Feeds 系)、SEO プラグインの「フィードを削除」設定、テーマが feed_links を外している |
プラグインの設定でフィードを有効に戻す。SEO プラグインのクロール設定(Yoast SEO では「クロールの最適化」)を確認 | |
| 空のフィードが返る | 投稿が無い、投稿タイプがフィードから除外されている | 投稿があるか確認。カスタム投稿タイプは ?post_type= を付ける |
|
| 古い記事のまま更新されない | キャッシュプラグイン・サーバーキャッシュ・CDN がフィードを保持している | キャッシュを削除し、フィードの URL をキャッシュ対象から除外する | |
| 文字化けする | テーマやプラグインが別の文字コードで出力している | サイトの文字コードが UTF-8 であることを確認。手順 3 の検証で該当箇所を見る | |
| 本文が途中までしか入らない | 表示設定が「抜粋」になっている | 手順 5 で「全文を表示」に変える(意図して抜粋にしているなら変えない) |
原因の切り分けの基本は、プラグインを 1 つずつ停止して再現を見る方法ですが、本番サイトでは検証環境で行います。?> の後の空行は、直前に編集したファイルから見ると早く見つかります。
手順 5: 件数と全文・抜粋の設定
管理画面の 設定 → 表示設定 に、フィードに関する項目が 2 つあります(WordPress の公式ドキュメントの説明に沿います)。
- RSS/Atom フィードで表示する最新の投稿数: フィードに含める件数です。
- フィードの各投稿に含める内容: 「全文を表示」か「抜粋」かを選びます。抜粋は通信量を抑えられます。
全文にすると、フィードから本文をそのまま転載されやすくなります。転載を避けたいサイトでは抜粋にする判断もあります。
WordPress の運用の観点
- フィードは公開情報の出口の 1 つです。下書きや非公開の投稿は含まれませんが、公開済みの投稿はカテゴリーや投稿者の単位で機械的に取り出せます。投稿者フィードの URL にはユーザー名(スラッグ)が出るため、ログイン ID と投稿者スラッグを同じにしているサイトでは、ログイン ID の推測材料になります。表示名とは別にスラッグを変えておくのが無難です。
- 更新通知の用途: フィードは、X への自動投稿サービスやニュースレター配信ツールの入力に使われます。表示されない状態が続くと、それらの連携が黙って止まります。月に 1 回程度、手順 2 のコマンドで確認する習慣をつけると気づけます。
- noindex との関係: フィードは XML なので、投稿に noindex を付けても影響しません。検索結果に出したくないページの整理は、noindex を使い分けてクロールの無駄を減らす方法を参照してください。
- フィードを止めたい場合: 利用者がいないなら無効化しても問題はありませんが、Jetpack や外部連携が使っていることがあります。止める前に、サーバーのアクセスログで
/feed/へのアクセス元を確認します。
よくある質問
WordPress のフィードの URL はどこで分かりますか
サイトの URL の末尾に /feed/ を付けたものが RSS 2.0 のフィードです。ページのソースの <head> 内にある <link rel="alternate" type="application/rss+xml"> にも URL が書かれています。
フィードを開くと「XML 宣言が許可されるのは、文書の先頭のみです」と出ます
XML の前に空行などの余分な文字が出力されています。原因はテーマやプラグインの PHP ファイルの ?> の後の空行、または BOM 付きで保存されたファイルがほとんどです。直前に編集したファイルの末尾を確認し、空行を消すか BOM なしで保存し直してください。
フィードが 404 になります
フィードを無効化するプラグインや、SEO プラグインのフィード削除の設定が原因として多いです。それらを確認したうえで、設定 → パーマリンク設定 を開いて「変更を保存」を押すと、リライトルールが再生成されて直ることもあります。
フィードに全文を載せるべきですか、抜粋にすべきですか
利用者の読みやすさでは全文、転載の抑止と通信量では抜粋が有利です。設定 → 表示設定 で切り替えられるので、サイトの方針で決めてください。
まとめ
- WordPress のフィードは
/feed/を基本に、コメント・カテゴリー・タグ・投稿者・検索結果・各投稿のコメントの単位で自動生成されます。 - 確認は、ブラウザーで開く、
curlでヘッダーと先頭を見る、W3C の Feed Validation Service で検証する、の 3 つで足ります。 - 表示されない原因は、PHP ファイルの余分な出力(空行・BOM)、フィードを止めるプラグインや設定、キャッシュがほとんどです。件数と全文・抜粋は表示設定で変えます。
関連記事
参考: WordPress Developer Resources – WordPress Feeds、WordPress Documentation – Settings Reading Screen、W3C Feed Validation Service
更新履歴: 2026-11-09 全面改訂(フィード URL の一覧、curl と Feed Validation Service での確認手順、表示されないときの原因別の対処、表示設定の項目、運用上の注意を追加)。この記事はワードプレス博士(ライトセンド株式会社)が運営しています。