EC-CUBE 4のXMLサイトマップ 3つの選択肢

EC-CUBE 4でサイトを作り、Search Consoleにサイトマップを登録しようとして、/sitemap.xml が404になるという相談がよく寄せられます。サイトマップは、検索エンジンに渡すページのURL一覧です。
EC-CUBE 4系は、XMLサイトマップを標準では作りません。ASPカートの多くは自動で作りますが、EC-CUBEでは自分で用意します。選択肢は3つです。プラグインを入れる、自作する、外部ツールで生成する。どれを選ぶかは、商品数、更新頻度、開発体制で決まります。
この記事では、3つの選択肢を更新の追随・分割・lastmod・運用負荷で比べます。自分のショップに合う選び方と、選んだあとの確認事項も整理します。
結論: 商品1万点未満ならプラグイン、それ以上か要件が特殊なら自作。外部生成は一時しのぎ
選択肢 | 更新の追随 | 分割(5万URL超) | lastmod | 開発 | 判断 |
|---|---|---|---|---|---|
プラグイン | 自動(プラグインの仕様による) | プラグインによる | プラグインによる | 不要 | 商品1万点未満、標準的な構成 ◎ |
自作 | 自動(自分で設計) | 自由 | 自由 | 必要 | 大規模、多言語、独自のURL構成 ◎ |
外部ツールで生成して静的に置く | 手動(再生成が必要) | ツールによる | 生成時点の値 | 不要 | 移行期の一時対応 △ |

重要な考え方: サイトマップの価値は「作った日」ではなく、「今日も正しいか」で決まります。商品を追加・削除しても追随しないサイトマップは、古いURLを検索エンジンに渡し続けます。
選択肢1: プラグイン
EC-CUBEのオーナーズストアに、サイトマップ生成のプラグインがあります。選ぶときは、次の点を確かめてください。
使っているEC-CUBEのバージョン(4.0/4.1/4.2/4.3)に対応しているか
商品・カテゴリ・特集ページ・ユーザー定義ページのどれを含むか
lastmodを出力するか。出力する場合、商品の更新日時を反映しているか
5万URLを超えたときに分割(サイトマップインデックス)するか
非公開商品・在庫切れ商品の扱いを設定できるか
プラグインの更新が続いているか(最終更新日)
対応バージョンが古いプラグインは、EC-CUBE本体のアップデートで動かなくなることがあります。導入前に、プラグインの最終更新日を確認してください。
選択肢2: 自作
開発体制があれば、自作がいちばん柔軟です。実装の形は2つあります。
形 | 内容 | 向いている場合 |
|---|---|---|
動的生成(コントローラ) | リクエストのたびにDBからURLを生成 | 商品数が数千まで。常に最新 |
バッチ生成(コンソールコマンド) | 定期実行でファイルを生成して静的に配信 | 商品数が数万以上。生成負荷を分離 |
自作するときの要件:
公開状態(公開/非公開)と、販売終了の商品を除外する
lastmodに商品の更新日時を入れる。全URLに同じ日付を入れない
5万URLまたは50MBを超えたら分割し、サイトマップインデックスを出す
カテゴリ、特集、ユーザー定義ページも含める
多言語やモバイル専用URLがあれば、その扱いを決める
選択肢3: 外部ツールで生成
クローラー型のサイトマップ生成ツールで、公開サイトを巡回してURL一覧を作ります。それを静的ファイルとして置く方法です。開発もプラグインも不要です。ただ、商品の追加・削除に追随しません。再生成を忘れた時点で、古くなります。移行期やプラグイン導入までの一時対応にとどめ、恒久的な手段にはしないでください。
選んだあとに確かめること
生成されたサイトマップをブラウザで開き、XMLとして正しく表示されるか
URL数が公開中の商品数・カテゴリ数と近いか
非公開・販売終了の商品が含まれていないか
lastmodが商品ごとに異なる値になっているか(全部同じなら実質無意味)
Search Consoleに登録し、「成功しました」になるか
robots.txtに
Sitemap:行でサイトマップのURLを記載する

用意したあとも、崩れます
サイトマップは、用意した後も崩れます。EC-CUBE本体のアップデートで、プラグインが止まる。バッチの定期実行が止まる。新しいページ種別を追加したのに、サイトマップに含めていない。こうしたことは、気づきにくい形で起きます。

Search OSは、EC-CUBEを含む既存のショップに対して、サイトマップの生成状態・URL数・lastmodの妥当性を継続的に確認します。検索エンジンとAIクローラーが実際にどのURLを取得しているかも見ます。サイトマップと実態のずれを、修正対象に整理します。サイトマップを作る作業の置き換えではありません。
よくある質問
サイトマップがなくても索引されますか
内部リンクをたどれば、索引されます。ただ、発見が遅くなり、更新の反映も遅れます。商品数が多いほど、差は大きくなります。
EC-CUBE 2系にはサイトマップがありましたか
2系には、標準のサイトマップ生成機能がありました。4系への移行で「なくなった」と感じるのは、このためです。
プラグインと自作を併用してもいいですか
2つのサイトマップが、同じURLを別の情報(lastmod等)で伝えると矛盾します。1つに絞ってください。
あわせて読みたい
参考資料
Google Search Central: Build and submit a sitemap
Google Search Central: Manage your sitemaps using sitemap index files
EC-CUBE: オーナーズストア
sitemaps.org: Sitemaps XML format