Shopifyのサイトマップとrobots.txtの確認と編集
Shopifyのサイトマップの場所、Googleへの送信方法、ページが載らない理由、robots.txt.liquidでrobots.txtを安全に編集する方法。
著者: Denis Veisllari
Shopifyのサイトマップは yourstore.com/sitemap.xml に、robotsファイルは yourstore.com/robots.txt にあります。どちらもShopifyが自動で作成・更新します。サイトマップを直接編集することはできませんが、何を含めるかは選べます。robots.txt はテーマのテンプレートで編集できます。ほとんどのストアは、サイトマップをGoogle Search Consoleで送信し、robots.txt はそのままにしておくべきです。
このガイドでは、両ファイルの場所、サイトマップに載らないページの直し方、robots.txt の編集に意味がある場合を説明します。ShopifyのSEOガイドの一部です。
サイトマップを見つける
メインドメインで /sitemap.xml を開きます。これはサイトマップインデックスで、商品、コレクション、ページ、ブログ記事の個別のサイトマップにリンクする短いファイルです。公開、非表示、削除に合わせて、ShopifyがURLを追加・削除します。
メインドメインを使いましょう。ストアが yourstore.myshopify.com やサブドメインでも表示される場合、それらはメインドメインにリダイレクトされ、サイトマップも同様です。
Shopify Marketsで複数の国に販売し、サブフォルダや別ドメインを使っている場合は、マーケットのバージョンごとに独自のサイトマップがあります。たとえば /en-ca/sitemap.xml です。
Googleに送信する
- ストアのメインドメインをGoogle Search Consoleにプロパティとして追加します。
- サイトマップ を開き、
sitemap.xmlと入力して 送信 をクリックします。 - 数日後に確認します。レポートに、Googleが見つけたURLの数が表示されます。
送信は1回だけで済みます。Googleは定期的にサイトマップを読み直し、Shopifyは常に最新に保ちます。Bing Webmaster Toolsでも同じことをしましょう。Search Consoleの設定をインポートできます。
ページがサイトマップに載らない理由
Shopifyは、オンラインストアで公開中のページだけを掲載します。次の順に確認してください。
- ストアがパスワードで保護されている。 ストアのパスワードがオンの間、検索エンジンはストアをまったくクロールできません。公開前に解除しましょう。
- 商品がOnline Store販売チャネルで販売可能になっていない。 POSやマーケットプレイスなど、ほかのチャネルにしかない商品は除外されます。
- 下書きまたは非公開である。 下書きや公開日が未来のページは、公開されるまで掲載されません。
- 検索から非表示になっている。 一部のアプリやテーマは、ページをサイトマップから外してnoindexタグを付けるために
seo.hiddenメタフィールドを設定します。インストールしたものが意図的にそうしたのかを確認しましょう。
サイトマップに載っていても、インデックスされているとは限りません。Search Consoleの ページ レポートで、掲載されたURLのうちGoogleがインデックスしないと判断したものとその理由が分かります。
初期設定のrobots.txt
Shopifyの初期設定の robots.txt は、検索結果に出るべきでないページをブロックします。管理画面、カート、チェックアウト、顧客アカウント、サイト内検索の結果、そして放っておけば何千ものほぼ重複したページを生む並べ替えや絞り込みのパラメータ付きのコレクションURLです。クローラーにサイトマップの場所も示します。
初期設定は理にかなっています。Shopifyはこれを随時更新しており、まるごと置き換えるべきでない十分な理由になります。
robots.txtを編集する
robots.txt.liquid というテーマのテンプレートでファイルをカスタマイズできます。
- Online Store > Themes に進み、公開中のテーマのメニューを開いて Edit code を選びます。
- Templates で Add a new template を選び、robots を選んで作成します。
- 新しいテンプレートは、Shopifyの初期設定のルールをLiquidで再現しています。それらのルールを削除するのではなく、その前後に変更を加えます。
編集するよくある理由:
- 望まないクローラーをブロックする。 特定のAI学習用ボットなどです。OAI-SearchBotやPerplexityBotのようなAI検索クローラーをブロックする前によく考えてください。それらの回答に載らなくなります。どのボットが何をするかはChatGPTで上位に表示されるためのガイドで扱っています。
- アプリが作った内部URLが検索に出ている場合にブロックする。
編集すべきでない理由:
- Googleからページを消すため。
robots.txtが止めるのはクロールであってインデックスではなく、ブロックしたページも説明なしで表示されることがあります。noindexタグを使うか、リダイレクトを付けてページを削除しましょう。 - コレクション経由の重複パスを隠すため。Shopifyのcanonicalタグがすでに処理しています。
テンプレートはテーマの中にあるので、公開中のテーマにしか適用されません。テーマを切り替えるときは robots.txt.liquid をコピーしないと、初期設定に戻ります。
設定を確認する
サイト監査は、リダイレクトやエラーを返すサイトマップのURL、robots.txt でブロックされたページ、サイトマップに載っていないページを検出します。zaDojoのサイト監査はShopifyストアでもこれを行い、Shopifyのクローラーアクセス署名に対応しているので、クロールが途中で打ち切られません。設定はShopifyのメインガイドで説明しています。
よくある質問
Shopifyのサイトマップは編集できますか? 直接はできません。ページの公開、非公開、非表示で管理します。ファイルはShopifyが自動で書き直します。
サイトマップに独自のページを追加できますか? Online Store > Pages で作成したページは自動で追加されます。アプリが /apps/ 以下で配信するURLは、Shopifyが生成するものではないので追加されません。
Googleがサイトマップを読むまでどのくらいかかりますか? 通常は送信から数日で、新しいストアではそれ以上かかることもあります。送信してもすべてのURLがインデックスされる保証はありません。