Magentoは「検索エンジン最適化(SEO)ができているシステムだ」と宣伝されています。
ですが、正しく設定し、コンテンツもそれに合わせていかないとよりよい結果を出すことができません。
このエントリでは、Magentoの設定をどうやればよいかについて解説します。

システム設定のSEOに関するパラメータ

Magentoのシステム設定画面にはいくつかの箇所に分散したSEOに関する設定があります。
以下に列挙した箇所に分散していて、うっかりすると設定漏れ・忘れをしてしまいます。 

  • 全般/ウェブ
  • 全般/デザイン
  • カタログ/カタログ
  • カタログ/Googleサイトマップ
  • カタログ/RSSフィード

これからこれらの箇所にどういう設定があるかを説明していきます。

全般/ウェブ

全般/ウェブの設定

ここでは

  • ウェブサーバーリライトの設定
  • ストアコードをURLに付加する設定
  • 自動リダイレクトの設定

を行います。

ウェブサーバーリライトの設定とは

この設定を有効にすると、Magentoのフロントエンド画面のURL中に含まれている「index.php」という文字列が消えます。
この設定単体でなにか劇的な変化があるわけではありませんが、やはりファイル名の後ろにパラメータがつくよりは、つかないほうが自然です。

この処理はApacheであればmod_rewrite、NginxであればNginx自身の設定と機能によって実現されています。
PHPの処理で実現しているわけではありません。

この設定は通常有効にすることが推奨されていて、インストール時のオプション選択で有効にできるのですが、忘れがちなので、SEOをする際には最初に設定を確認しておくと良いでしょう。 

ストアコードをURLに付加する設定とは

Magentoはマルチサイト運用ができるシステムです。
とくに1ウェブサイト・1ストアで複数のストアビューを言語別に運用していく場合、どのストアビューを表示するかという判断は、通常URLのクエリー文字列で行われています。

この設定を有効にすることでその判断はクエリー文字列ではなく、URLの一部として扱われるようになります。
多言語で運用する場合には有効にしておいても良いかもしれないのですが、一部のエクステンションなどでは正しく動かないことがあるので、できれば無効にしておくことが望ましいとされています。

また、同じ言語でストアビューを変える場合、検索エンジンに重複コンテンツとみなされる可能性があるます。
ですからこの設定は余程のことがなければ無効にしておくべきでしょう。 

自動リダイレクトの設定とは

Magentoのカテゴリ・商品・CMSページにはURLキーというパラメータがあります。
このパラメータはサイト管理者が使用できる文字種の範囲内で、自由に決めることができます。
ただ、URLキーを変更してしまうと、それまで使用していたURLキーはなくなってしまうため、検索エンジン経由で訪問する人にとっては、404ページが表示されてしまうことになります。これはSEO的にはマイナスです。

これを回避するためにMagentoではURLキーを変更した際に、古いURLキーでアクセスしてきた訪問者を、自動的に新しいURLに誘導する仕組みを備えています。

この設定を有効にしておくと、URLキーを変更した際にMagentoが自動的にリダイレクトを設定します。
ただし、あまり頻繁にURLキーを変更すると、リダイレクトのデータがたくさん作成されてしまう問題もあります。 

全般/デザイン

全般/デザイン設定

ここではHTMLの head タグの中身に関する設定を行います。
わりと忘れがちなのですが、ここでMetaタグの

  • keywords
  • description
  • robots

の設定を行います。
ここで設定しておけば、万一カテゴリや商品、CMSページのMetaタグを設定し忘れても、この設定が自動的に使用されます。(だからといって個別の設定をしなくて良い、というわけではありません)

うっかり忘れを防ぐためにも、ここで設定をしておくことはSEO上不可欠な作業です。 

カタログ/カタログ

カタログ/カタログ設定

ここでは主にカテゴリと商品ページに関する設定を行います。

重要な設定項目としては、以下の5つがあります。

  • 自動生成したサイトマップ
  • 商品URLにカテゴリパスを使用する
  • URLが変更されたら恒久的なリダイレクト設定を作成する
  • カテゴリに正確なメタタグを使用する
  • 商品に正確なメタタグを使用する

それぞれ役割があるので説明していきます。

自動生成したサイトマップ

Magentoにはサイト上で公開しているカテゴリや商品をリストしたページを作成する機能があります。
これを自動生成サイトマップといいます。
この設定を有効にすると、フッターに自動的にリンクが追加され、サイト上にある公開状態の商品とカテゴリ全てに対するリンクをもったページを表示するようになります。

主に検索エンジンに対してクロールを円滑にしてもらうためのページですが、うまくデザインすることで訪問者にとっても便利なページになりえます。 

商品URLにカテゴリパスを使用する

Magentoの商品はカテゴリと独立しています。
商品ページにアクセスできるかできないか、という設定は、その商品がウェブサイトに紐付いているかどうかで判断しています。カテゴリに紐付いていなくても構いません。
ですから、表示できる商品については「ドメイン名/商品URLキー」で直接アクセスできてしまうのです。

そして、商品をカテゴリに所属させると、カテゴリ経由での商品ページは、「ドメイン名/カテゴリURLキー(階層分だけ)/商品URLキー」となります。

こうなると、複数の商品ページURLが1つのサイト上に存在することになり、検索エンジンに重複コンテンツとみなされる可能性が出てきます。

これを阻止するためには、「商品URLにカテゴリパスを使用する」を無効にします。
「商品ページにURLがついていないとおかしい」と思う方もいるかもしれませんが、Magento的にはカテゴリパスがついていてもいなくても処理できるようになっているので全く問題はありません。

むしろ、検索エンジンにマイナス評価をされる方が問題です。
ですから、この設定は無効にしておいたほうがよいでしょう。 

URLが変更されたら恒久的なリダイレクト設定を作成する

これは先ほどの「全般/ウェブ」の設定で触れたものと同じです。
この設定を有効にしておくと、商品やカテゴリの編集画面で、自動的に古いURLに対して新しいURLへのリダイレクトを作成するようになります。 

カテゴリに正確なメタタグを使用する

この設定は、linkタグのcanonicalを出力するために使用します。
一般的にcanonicalは正規化と呼ばれていて、サイト上でこのcanonicalで指定したURLがオリジナルであり、今表示しているURLがそれと異なっている場合は、そのURLがオリジナルのコピーであると検索エンジンに教えるために使用します。

そのため、SEOを行うためにはこの設定は必ず有効にしておかなければなりません。 

商品に正確なメタタグを使用する

この設定は先ほどのカテゴリに対するものと同じです。
有効にしておかないと、商品ページURLをサイト上でユニークにできません。 

カタログ/Googleサイトマップ

カタログ/Googleサイトマップ設定

ここではGoogleサイトマップを生成するための基本設定を行います。

カテゴリ・商品・CMSページのオプションは状況に応じて適当に見直しをすれば良いのですが、忘れずに設定したいのは一番下にある「生成設定」です。

この設定が有効になっていないと、たとえCron.phpやCron.shを5分に1回実行するようにしていたとしても、Googleサイトマップが生成されません。

GoogleサイトマップはGoogle WebマスターツールでアップロードできるXMLファイルで、サイト上にどのようなURLがあるかを検索エンジンに教えることができます(インデックスされるかどうかは別問題です)。

より効率的にサイトを検索エンジンにクロールさせるためには必要な設定なので、忘れずに設定しておきましょう。 

カタログ/RSSフィード

カタログ/RSS設定

ここではRSSフィードの配信について設定します。
ほしい物リストや注文状態の通知はあまり重要ではないですが、カタログに関するRSSは配信しておいたほうが良いでしょう。
RSSのアグリゲーションサービスやRSSフィードリーダーを使用しているユーザーを引き付けることができます。

個別のコンテンツを適切に(MetaタグやURLキー、商品説明など)を設定していくことで、SEOのできたサイトになっていきます。