
AI 検索や AI の要約に引用されるメディアにするには、CMS で何が変わるのか。EmDash 1.2.0 で記事を 1 本作り、公開ページの HTML、構造化データ、サイトマップ、本文データを実際に確かめました。標準で出るもの、AI クローラーを止めるか通すかを決める場所、誰にも保証できないことを整理します。
この記事の目次
検索結果の上に、AI の要約が出るようになりました。それに伴い、「うちの記事は AI に引用されるのか」「CMS(ホームページの更新システム)を変えれば有利になるのか」という疑問が出てきます。オウンドメディアを始める会社にとって、気になるのは当然です。
答えを先に書きます。AI に引用される条件は公開されておらず、どの CMS も保証できません。CMS が担えるのは 2 つです。検索エンジン向けの基本の情報を漏れなく出すこと。そして、AI のクローラー(ページを自動で読みに来るプログラム)を通すか止めるかを選べる状態にすることです。EmDash 1.2.0 で記事を 1 本作り、何が標準で出て、何が別の手当てになるかを確かめました。
AI 検索で引用される条件は、どこにも公開されていない
最初に、期待しすぎないための前提を書きます。
Google は AI による概要(AI Overviews)と AI モードについて、公式の案内で次のように説明しています(2025年12月10日更新)。
- 表示されるための追加の要件や、特別な最適化はない。通常の検索に載り、抜粋を表示できるページであればよい。
- AI 向けの特別な構造化データ(検索エンジン向けにページの内容を説明する決まった書式のデータ)は要らない。
- AI 向けのテキストファイルや新しい書式を作る必要もない。
- 要件を満たしても、検索に載ることも、表示されることも保証されない。
ほかの AI 検索についても、どの記事を引用するかの条件を示した公式の資料は、確かめた範囲では見つかりませんでした。つまり「この CMS にすれば AI に引用される」とは、誰にも言えません。言えるのは、検索エンジンに正しく読まれる基本を外さないことと、記事の中身そのものです。
EmDash は、本文を「部品の種類ごと」に保存する
EmDash の記事本文は、HTML の塊ではなく、「見出し」「段落」「箇条書き」「引用」といった部品の並びとして保存されます。この記事では、これを「EmDash の本文データ」と呼びます。
実際に、工場見学のお知らせを想定した記事を 1 本作り、管理側の API(システム同士がデータをやり取りする窓口)から本文を取り出しました。見出しは「h2 の部品」、箇条書きは「箇条書きの 1 項目、階層 1」、リンクは「この文字に付いたリンク先」として、種類ごとに記録されていました。文字の色や余白のような見た目の指定は、本文に入っていません。
公開ページでは、この本文データから、表示のたびに HTML が組み立てられます。出力を見ると、見出しは h2、箇条書きは ul、引用は blockquote という、意味どおりのタグになっていました。
ここで正直に書いておくことが 2 つあります。
- AI のクローラーが読むのは、本文データではなく公開ページの HTML です。 本文データの API に認証なしでアクセスすると「認証されていない」と返り、外からは読めませんでした。AI に直接データを渡す仕組みではありません。
- WordPress でも、見出しや箇条書きを正しく使えば、同じような HTML になります。 違いは、見た目の指定が本文に混ざりにくいことと、データとして読めるので別の形に出し直す処理を作りやすいことです。この EmDashラボも、原稿を変換して本文データにし、CMS に入れています。流れはAI エージェントと進める記事制作で公開しています。
検索エンジン向けの基本は、標準で出る
同じ記事の公開ページと、サイトの周辺ファイルを確かめました。条件は次のとおりです。
- EmDash 1.2.0(2026年10月15日時点の最新)、
npm create emdash@latestで作成した blog テンプレート、ローカルの開発サーバー - 記事を 1 本作って公開し、ページとファイルを認証なしで取得
- 次に、記事ごとの SEO 欄(検索用のタイトルと説明文、検索に出さない設定)を変えて、出力の変化を確認
確かめたもの | 結果 |
|---|---|
説明文と SNS 用の情報(OGP) | 抜粋から自動で出る。SEO 欄に書くとそちらが優先される |
正規 URL(canonical) | 記事の URL が出る |
構造化データ | 記事は「ブログ記事(BlogPosting)」として、見出し・説明・公開日・更新日・発行元が出る |
サイトマップ | 公開した記事が自動で載る。「検索に出さない」にすると外れる |
robots.txt | 全体を許可し、管理画面だけを除外。サイトマップの場所も書かれる |
RSS | テンプレートに付いていて、公開記事が載る |
「検索に出さない」を選ぶと、ページに検索エンジン向けの「載せないで」という指示が入り、サイトマップからも外れました。WordPress で SEO 用のプラグイン(追加機能)を入れて行っていたことの多くが、標準で動く形です。
一方で、テンプレートのままでは足りない点も見つかりました。
- ページの言語の指定が「英語(en)」のまま。日本語のサイトでは、制作時に「日本語(ja)」に直します。
- 構造化データに著者が入らない。今回は署名(記事の書き手の表示)を付けておらず、テンプレートも著者を渡していなかったためです。
- 「検索に出さない」にした記事も、RSS には残る。RSS はテンプレート側のファイルで作られていて、この設定を見ていません。
どれもテンプレートを直せば済む内容です。ただ「入れれば全部整う」わけではなく、制作時に確認する項目として残ります。
AI クローラーを通すか止めるかは、Cloudflare 側で決める
AI のクローラーには、検索のために読むもの、AI の学習のために集めるもの、利用者の代わりにページを読みに来るものがあります。御社にとって、通したいものと止めたいものは違うはずです。
EmDash そのものが持っている主な手段は robots.txt です。管理画面の設定から中身を書き換えられ、特定のクローラーに「読まないで」と伝えられます。ただし robots.txt は、守るかどうかが相手任せのお願いです。
実際に止めたり、対価を求めたりする仕組みは、EmDash が動く基盤の Cloudflare 側にあります。いずれも Cloudflare の公式ドキュメントで確かめた内容で、Nowever のサイトではまだ試していません。
- AI クローラーの遮断と分析(AI Crawl Control)。 すべてのプランで使え、クローラーごとに許可・遮断を選べます。無料プランでは、クローラーが名乗る名前で見分けます。
- robots.txt の自動追記。 検索・AI の回答への利用・AI の学習の 3 つについて、許可するかの意思表示を robots.txt に足せます。これもすべてのプランで使えます。
- クロールへの課金(Pay per crawl)。 AI のクローラーに、読むたびに料金を求める仕組みです。2026年10月時点で、申し込み制の試験提供です。
- Markdown での配信(Markdown for Agents)。 AI が Markdown(見出しや箇条書きを記号で表す簡単な書式)を求めたとき、ページを変換して返します。Cloudflare の Pro 以上のプランで無料です。
EmDash 側の関連では、公式パッケージとして x402(ページの閲覧に少額の支払いを求める仕組み)への対応が用意されています。支払いは暗号資産のウォレットで受け取る前提で、会社のメディアですぐ使う場面は多くありません。
反対に、EmDash 1.2.0 の標準では出ていなかったものもあります。AI 向けの案内ファイルとして話題の llms.txt はなく、アクセスすると 404 でした。Markdown を求める要求を送っても、返ってきたのは通常の HTML でした。前の節のとおり、Google は AI 向けのファイルを不要としています。足りないから不利になる、とは言えません。
なお、このサイト(nowever.co)の robots.txt は、全体を許可したうえで、OpenAI の検索用クローラー(OAI-SearchBot)と広告用クローラー(OAI-AdsBot)を名指しで許可しています。2026年10月15日に確認しました。AI 検索に載ることを選んだ設定です。
正直に書くと、CMS より記事の中身が効く
ここまでの内容は、どれも「読まれる準備」です。準備が整っていても、AI に引用されるかは記事の中身で決まります。
AI の要約に使われやすい記事の条件は、公式には示されていません。それでも、次の書き方は人にとって読みやすく、検索エンジンにも内容を誤解されにくいものです。読者の質問に最初の段落で答えること。日付・版・出典を書くこと。自分で確かめた結果を載せること。EmDash はこれを書いてはくれません。
EmDash 側で、まだ若いと感じた点も挙げます。
- AI 専用の機能は少ない。llms.txt や Markdown での配信は、標準では出ていません。
- AI クローラーの制御は、ほぼ Cloudflare 側の設定です。EmDash を入れただけでは何も変わりません。
- AI からどれだけ読まれたかを細かく見る手段は限られます。Cloudflare の AI クローラーの集計は、どのプランでも直近 24 時間までです。期間を変えられるのは、Bot Management 付きの Enterprise プランだけです。
- AI のエージェントがページ内を検索できる部品(WebMcpSearch)もありますが、ブラウザの仕組み自体がまだ試験段階です。
どんな会社に向いているか:AI 対策だけなら、乗り換えは要らない
AI 検索への備えだけを理由に CMS を変える必要はありません。Cloudflare の AI クローラーの制御は、サイトの手前で効く仕組みです。WordPress のサイトでも、Cloudflare を通していれば同じ設定を使えます。構造化データやサイトマップも、WordPress なら SEO 用のプラグインで出せます。今それが整っているなら、そのままで構いません。
EmDash が向いているのは、メディアを新しく立ち上げる会社や、プラグインの更新に追われずに検索向けの基本を揃えたい会社です。標準で出る範囲が広く、記事が増えても同じ形で出続けます。メディアの CMS 選び全体はメディアの CMS に EmDash を選ぶ理由で整理しています。
まずは今のサイトで、robots.txt(サイトの URL の末尾に /robots.txt)と、記事ページの構造化データが出ているかを確かめてみてください。見方が分からないときや、新しいメディアの立ち上げをご検討中のときは、EmDashでつくるWebサイト制作からご相談ください。
参考(一次情報)
- AI features and your website(Google 検索セントラル、2025年12月10日更新)https://developers.google.com/search/docs/appearance/ai-features
- Built-in SEO Features(EmDash 公式ドキュメント:説明文、構造化データ、サイトマップ、robots.txt)https://docs.emdashcms.com/guides/seo/
- Field Types(EmDash 公式ドキュメント:本文データの保存形式)https://docs.emdashcms.com/reference/field-types/
- AI Tools(EmDash 公式ドキュメント:MCP サーバーと WebMcpSearch)https://docs.emdashcms.com/guides/ai-tools/
- x402 Payments(EmDash 公式ドキュメント)https://docs.emdashcms.com/guides/x402-payments/
- Introducing EmDash(Cloudflare Blog、2026年4月1日:x402 への対応)https://blog.cloudflare.com/emdash-wordpress/
- AI Crawl Control(Cloudflare 公式ドキュメント)https://developers.cloudflare.com/ai-crawl-control/
- AI Crawl Control の始め方(Cloudflare 公式ドキュメント:無料プランでの見分け方、集計期間)https://developers.cloudflare.com/ai-crawl-control/get-started/
- Managed robots.txt(Cloudflare 公式ドキュメント)https://developers.cloudflare.com/bots/additional-configurations/managed-robots-txt/
- What is pay per crawl(Cloudflare 公式ドキュメント)https://developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/what-is-pay-per-crawl/
- Markdown for Agents(Cloudflare 公式ドキュメント)https://developers.cloudflare.com/fundamentals/reference/markdown-for-agents/
- 自分の検証: EmDash 1.2.0 の blog テンプレートで記事を作り、公開ページ・構造化データ・サイトマップ・robots.txt・RSS・本文データを確認(2026年10月15日。手順は制作ノートの fixtures/README.md)


