robots.txtファイルは、技術的なSEOの基本であり、常に管理しておくべきものです。検索エンジンがサイトをどのようにクロールするかを制御できるため、重要なページを検索結果に表示させ、不要なページをブロックすることができます。
ページのクロールとインデックスを制御することがなぜ重要なのでしょうか?
- クロール予算の節約。 検索ボットが一定時間に処理できるページ数には限りがあります。重要なページが確実にクロールされ、定期的に再クロールされるようにするため、検索結果に表示する必要のないページは除外しておくべきです。
- 技術的なページが検索結果に表示されるのを防ぐ。 ストアには、ログイン、チェックアウト、サイト内検索など、ユーザーの利便性のために生成されるページが多数あります。これらはUXには不可欠ですが、検索結果にランクインさせる必要はありません。
- 重複コンテンツ問題の回避。 前述の技術的なページは、重複コンテンツを生む可能性があります。例えば、並べ替えオプションが異なるとURLも変わりますが、表示される商品は同じです。検索エンジンは重複コンテンツを好まないため、こうしたページがランキングに関与しないようにする必要があります。

ストアのページインデックスをどのように制御すればよいのでしょうか?
重要なページを評価し、検索ボットによるインデックスを促進するには、常に最新かつ正しい サイトマップを用意しておく必要があります。さらに、内部リンクを適切に管理し、外部サイトからリンクを獲得することで、検索エンジンから見てサイトの権威性を高めることができます。
これらの対策を行えば、ページが検索結果に表示される可能性は非常に高まりますが、100%のインデックスを保証する方法はありません。
100%保証できるのは、検索結果に表示させたくない特定のページを除外することです。そのためには、robots.txtファイルまたはrobotsメタタグで noindex ディレクティブを使用します。一見難しそうに聞こえますが、実際は非常に簡単です。特にShopifyでは、プラットフォームが自動的にインデックス設定の大部分を処理してくれるため、ストア運営者にとって非常に便利です。
では、Shopifyストアでnoindexにすべきページは何でしょうか?
オンラインストアでは、以下の種類のページをインデックスからブロックするのが合理的です。
- ユーザーアカウントに関連するすべて。 これらのページは顧客ごとに固有であり、検索結果には不要です。
- ゲストチェックアウトに関連するすべて。 ユーザーがログインせずにゲストとして購入する場合でも、生成される チェックアウト手順のページは検索対象ではありません。
- ファセットナビゲーションとサイト内検索。 前述の通り、これらのURLを検索ボットに提供すると、ボットを混乱させ、クロール予算を浪費し、重複コンテンツの問題を引き起こすだけです。
- 検索から隠したい商品。 特定の商品を検索結果に表示したくない場合(例:在庫切れの商品や、期限が過ぎて関連性のなくなった商品など)、Shopifyのrobots.txtファイルで検索から非表示にすることができます。
Shopifyにおけるrobots.txt
自動生成されるrobots.txtファイルを確認するには、ストアのドメインの末尾に /robots.txt を追加します。

このファイルには通常何が含まれているのでしょうか? 特定の検索ボット(User-agent フィールド)を指定し、クロールに関する指示(Disallow はアクセス禁止を意味します)を与えます。上記の例では、最初のルールセットはすべての検索ボット(User-agent が * に設定されている)に向けたものです。次に、Disallow ディレクティブが特定のページのクロールを禁止しています。この例では、管理画面、カート、チェックアウトなどの技術的なページのクロールが禁止されていることがわかります。
robots.txtには サイトマップ へのリンクも含まれており、これは検索クローラーが サイト構造 やインデックスの優先順位を理解するのに役立ちます。
以前までShopifyでは、このファイルに関する柔軟な設定はできませんでした。しかし、2021年6月より、Shopifyマーチャントはrobots.txtを編集できるようになりました。あらかじめ定義されたルールで十分な場合がほとんどですが、すべてのケースに対応できるとは限りません。例えば、サイト内検索にアプリを使用している場合、URLが変更されることが多く、デフォルトのルールが適用されません。また、絞り込みナビゲーションを使用している場合、選択したフィルターに応じてURLが変化するため、デフォルトのルールではすべてを考慮できない可能性があります。ファイルにページやルールを追加したり、ユーザーエージェントを細かく指定したりすることが可能です。
適用可能な既存のディレクティブについては、Googleのrobots.txtに関するガイドをご確認ください。
また、新しいルールは常に登場している点にも注意してください。例えば、2022年初頭、Googleは埋め込みコンテンツのインデックス登録を制御する新しいタグを導入しました:indexifembedded。これは、iframeや同様のHTMLタグを通じて挿入されたウィジェットがストアにあり、それらをインデックスさせたくない場合に適用できます。
Shopifyでrobots.txtを編集する方法
テーマのコード内には、多数のテンプレートが表示されます(オンラインストア > テーマ > 現在のテーマのアクションをクリック > コードを編集を選択 > テンプレートへ移動)。リストの中にrobots.txt.liquidファイルがあるはずです。
何らかの理由でファイルが見当たらない場合は、新しいテンプレートを追加をクリックし、robots.txtを選択して作成できます。

例えば、サイト内検索のインデックスをブロックする場合、テンプレート内では以下のように記述します:

詳細は、Shopifyのrobots.txtの編集に関するヘルプページを参照してください。
❗ robots.txtでdisallow(拒否)設定をしていても、外部ソースからのリンクがある場合はインデックスされる可能性があることに注意してください。そのため、過去に多くのトラフィックがあったものの、現在はストアにとって重要ではない古いページがある場合は、robotsメタタグでブロックするか、完全に削除することをお勧めします。
robotsメタタグを使用したShopifyコンテンツのnoindex設定
robots.txt以外にも、robotsメタタグを使用することで、テーマコードの<head>セクションにnoindexディレクティブを挿入できます。このタグの構文は、<meta name=”robots” content=”noindex”>となります。
Shopifyのrobots.txtコードの編集や作成と同様に、レイアウトセクションのtheme.liquidに移動します。例えば、/new-collectionページをnoindexにするルールを追加する場合、以下のようになります:

このように設定することで、検索結果からページを完全に非表示にできます。
❗ noindexは、nofollowまたはfollowディレクティブと組み合わせて使用できる点に注意してください。followを使用すると、そのページはインデックスから除外されますが、ページ上の他のリンクは検索ボットがクロールできるようになります。一方、nofollowを使用すると、ページ自体とそのページ上のすべてのリンクの両方が検索ボットからアクセスできなくなります。
アプリを使用したShopifyコンテンツのnoindex設定
これらすべてが複雑に感じられる場合、コードを一行も書かずに、より簡単にページインデックスを制御する方法があります。Shopifyストアの商品を検索から非表示にしたり、他のページをブロックしたりするのに役立つShopify向けSEOアプリがいくつか存在します。例えば、Sitemap Noindex SEO Toolsは月額3.49ドルで、あらゆるタイプのページに対応しています。
ページインデックスを改善してSEOを強化する
以上です。Shopifyのrobots.txtの仕組みと、それを活用する方法について理解が深まったことを願っています。robots.txtとrobotsメタタグを活用することで、ページインデックスの制御を強化し、SEO上の問題を未然に防ぎ、重要なページに価値を集約させて、検索結果で目立たせ、より多くの訪問者を獲得できるようになります。
その他のShopify SEOのヒントについては、当社のSEOガイドをご覧ください。
最後に、リダイレクトやSEO全般についてサポートが必要な場合は、お気軽にお問い合わせください。当社のエージェンシーチームが喜んでお手伝いいたします。







