サーバルートに静的ファイルを置く
EC-CUBE は通常 `html/` ディレクトリ配下にウェブ公開ファイルを置くため、`html/llms.txt` / `html/robots.txt` / `html/sitemap.md` を物理ファイルとして直接配置できます。これだけで S1 / S2 / S7 / S10 が pass します。Content-Type は Apache / Nginx 側 (.htaccess / sites-enabled の types ディレクティブ) で `.txt → text/plain` を確実に返すように設定してください。
Product / Organization 構造化データの埋め込み
テンプレート `app/template/default/default_frame.twig` の `<head>` 内に Organization JSON-LD を追加し、商品詳細テンプレート `app/template/default/Product/detail.twig` に Product + BreadcrumbList JSON-LD を追加します。`{{ Product.updateDate|date('c') }}` で dateModified を ISO 8601 で出力できるため、P11 まで一気に pass させやすいです。
robots.txt で AI ボットを明示許可
EC-CUBE 標準 robots.txt は `/admin/` などを Disallow するだけで AI ボットは無記述です。ファイル末尾に `User-agent: GPTBot\nAllow: /` 等を追記してください。Disallow されている `/admin/` などは EC のロジック上必要なので残します。
Markdown 版の提供 (Symfony Controller として実装)
`src/Eccube/Controller/MarkdownController.php` 相当のコントローラを作り、商品ページや固定ページの Markdown 版を返す route を追加します。`Accept: text/markdown` をチェックして HTML と Markdown を切り替えるか、`.md` 拡張子の専用 route を作る。重量級のため、まずは sitemap.md と llms.txt の整備を優先してください。