MENU

Shopifyでのnoindex設定方法 -検索で非表示にしたい-

当サイトは広告リンクを利用しています。

ECサイトを運営していて、検索結果に表示したくない、検索結果に表示しない方がよいページもあります。

検索結果への表示(インデックス)をコントロールするにはnoindexメタタグを使用します。

noindexとは何で、Shopifyではどうやって設定するのか、本記事で詳しく解説します。

15,000字超えのShopifyスタートマニュアル公開中!
プロが教える正しい手順でストアを開設しよう。

目次

noindexメタタグとは

noindexメタタグとは、特定のWebページを検索エンジンにインデックスさせないよう指示するためのHTMLタグです。

インデックスとは、Webページが検索エンジンのデータベースに登録されることです。

インデックスされたWebページは検索結果に表示され、インデックスされていないWebページは検索結果には表示されません。

よって、noindexメタタグを記述すれば、検索結果で非表示にするWebページを管理できます。

noindexは、ユーザーにとって必要なページだが検索結果には表示したくない、あるいはSEO上好ましくないページに対して使用し、以下のような場合によく利用されます。

  • 検索エンジンからの流入が不要なページ
  • 情報量が少ないページや重複コンテンツ
  • サイト全体の評価を下げる可能性のある低品質なページ

インデックスをコントロールすることは、SEOの評価にも影響します。

noindexの書き方

<meta name="robots" content="noindex">

上記コードをheadタグ内に記述します。

このコードをGoogleなどの検索エンジンロボットが認識すると、検索結果に表示されなくなります。

メタフィールドを使ってnoindexを設定する

Shopifyではnoindexを設定できるメタフィールドが用意されているので、簡単に機能を実装できます。

メタフィールドを定義するページタイプを選択

[設定]→[カスタムデータ]画面から、任意のページタイプを選択します。今回は、例として[ページ]を選択します。

カスタム定義を作成

[定義を追加する]をクリック。

カスタムメタフィールドの定義を入力

[名前]は自分にとってわかりやすい名前を入力します。今回は[noindex]としました。

[ネームスペースとキー]は[seo.hidden]と入力します。

[説明]は任意で入力します。各ページのメタフィールド設定欄に表示されます。

データタイプは[整数]で[1つの値]のみを選択します。

最後に[保存]します。

管理画面ページ詳細画面のメタフィールド「noindex」設定欄

管理画面からnoindexを適用したいページの詳細画面に移動し、メタフィールド欄[noindex]に[1]を入力して[保存]します。

noindexメタタグが記述されたページのソースコード例

実際のページにアクセスしたら、Webブラウザ上で右クリック(副ボタン)メニューから[(ページの)ソースを表示する]のような文言のメニューを選択します。

ページのソースコードが表示されるので、ブラウザ内検索(Win:Ctrl+f, Mac:+f)してnoindexと検索します。

<meta name="robots" content="noindex,nofollow">の記述が見つかれば正しく設定されています。

nofollowは「リンク先のページを辿らない」という指示です。このままで特に問題ありません。

メタフィールドを使ってnoindexを設定すると、Shopifyが自動で作成するXMLサイトマップからもそのページは削除されます。Shopifyのsitemap.xml生成について詳しくはこちら。

コードを編集してnoindexを追加する

メタフィールドを使ってnoindexを指定できないページ等は、テーマファイルを編集してnoindexを設定します。

管理画面[オンラインストア]→[テーマ]に移動し、[…]→[コードを編集]をクリックしてコードエディタを開きます。

theme.liquidファイルのheadタグ内に以下のようなコードを記述します。

{% if handle == 'page-handle' %}
<meta name="robots" content="noindex">
{% endif %}

page-handleの部分は各ページのハンドルに置換します。

複数のページを指定する場合は以下の様に記述します。

{% if handle == 'handle1' or handle == 'handle2' or handle == 'handle3' %}
<meta name="robots" content="noindex">
{% endif %}

コード編集はスキルが必要です。不安な方はプロに依頼しましょう。

noindexを設定できるアプリ

noindexを細かくコントロールしたり効率的に管理したい場合は、アプリを利用するとよいでしょう。

これらのアプリは、noindexの設定と密接に関係するサイトマップの作成も行えます。

特にサイト内のページが増えてきたら、こういったアプリを使うことで効率的に管理できるようになるでしょう。

robots.txtでは検索結果で非表示にできない

検索結果から非表示にする対策として、robots.txtを設定するという情報に出会うかもしれません。

しかしこれは、検索避けの手法としては正しいやり方ではありません。

そもそもrobots.txtは、検索エンジンロボット(クローラー)のアクセスを制御するためのファイルです。

Webサイトの特定のページやディレクトリを記述することで、それらのページにアクセスしないように指示するだけだからです。

つまり、robots.txtは検索インデックスからの削除を命令しているわけではないのです。

robots.txtがnoindexを妨害する

例えば、既にインデックス登録されているWebページを検索で非表示にしたいとします。

noindexメタタグを設定し、さらにrobots.txtにも記述を加え、アクセスを拒否したとします。

この場合、該当のページにはクローラーが来なくなるため、検索エンジンはnoindexが記述されていることにも気付けません。

よって、noindexを指定しているにも関わらず、そのページをクローリングできないため、 検索エンジンはインデックス登録したままの状態となってしまいます。

これがnoindexの代わりにrobots.txtを使うべきではない理由です。

つまり、検索避けをするには、検索エンジンに該当ページにアクセスしてもらった上で、ページのnoindexメタタグを認識してもらう必要があるのです。

それぞれの役割を理解し、適切に使用しましょう。

まとめ

  • 検索結果に表示させたくない時はページにnoindexメタタグを指定する
  • noindexはheadタグ内に記述する
  • Shopifyではnoindexを設定できるメタフィールドが用意されている
  • メタフィールドでnoindexを指定したページはsitemap.xmlからも削除される
  • 管理画面からメタフィールドでnoindexを指定できないページはコードを編集してカスタマイズする
  • noindexの代わりにrobots.txtでクロールを制御するべきではない

記事はお役に立てましたか?

ご覧いただきありがとうございます。
あなたのサポートが新たなコンテンツ作りの力になります。
もし記事を気に入っていただけたら少しでもご支援いただけると嬉しいです!

よかったらシェアしてね!
  • URLをコピーしました!

15,000字超えのShopifyスタートマニュアル公開中!
プロが教える正しい手順でストアを開設しよう。

コメント

コメントする

目次