DrupalのSEO対策

DrupalでSEO(Search Engine Optimization)をどうすればよいかは、以下のサイトが参考になります。

How Drupal allowed Duplika to have a fast and SEO friendly website
Basic Drupal SEO:On-site Optimization

これ以降は、当サイトのSEO対策に関連してDrupal6とDruapl7で使用しているモジュールを主として記載します。
モジュール一覧にはモジュール(admin/build/modules)の画像を掲載しましたが、これはモジュール内にもサブモジュールが含まれている場合があり、時としてそのモジュールの有無が動作に大きく影響するケースがあるため依存関係もわかるように画像にしました。
設定画面では、プロジェクト名が同じでもバージョンが変わると追加機能はよいとしてなくなる機能がありますので、それがわかればと思い掲載しています。

1.Clean URL

これは標準の機能になります。管理画面からアクセスして有効無効を設定するのみですが、実際にはサイトのウェブサーバの設定や.htaccessの設定が関係してきます。
D6とD7では管理画面へのURLがことなり、D6はON/OFFの選択ボタンに対してD7はトグルボタンがあるだけです。

D6の場合:クリーンURL(admin/settings/clean-urls)
D7の場合:クリーンURL(admin/config/search/clean-urls)

2.Pathauto

URLエイリアスを作成するモジュールです。作成はパターンを設定すれば好みのパス(URL)を自動生成してくれます。

(1)モジュール一覧

(2)設定画面

D6(エイリアス更新時)

URLエイリアスを削除したのち更新を実施した状態の画面ですが、削除は一括で実行できますが更新(再作成)はMAX50エントリになります。
1回の更新では削除したすべてのURLエイリアス(パス)が再作成できません。
そのままにしておくと、次回のcron.php実施時にさらに50個が更新されるようです。
すべての更新が完了するまではURLエイリアスのパスではページにアクセスできないURLが存在するため、ログメッセージに「page not found」のメッセージが出力されることになります。


D7(エイリアス削除時)



D6と比較するとFormがことなり、一括削除がしやすくなっています。

D7(エイリアス更新時)

URLエリアス更新時(D7)

D6とはことなり、一括で更新ができるようになっています。

D6(全般の設定-アップデート動作)

アップデート動作の設定(D6)

アップデート動作の項目は、一番上の「なにもしません。」が推奨設定とされています。
しかし、この設定ではタイトル名を変更したときに紛らわしくなるので個人的には好きではありません。
path redirectモジュールを導入すると4番目に、「新しいURLエイリアスを作成します。既存のURLエイリアスにはリダイレクトを設定します。」が追加されますので、それに設定しています。

D7(環境設定-アップデート動作)

アップデート動作の設定(D7)

D6とはことなり、Redirectモジュールとの連携項目はなくなり、Redirectモジュール任せになっています。

3.Path Redirect(D6)とRedirect(D7)

Path RedirectはD7ではRedirectになります。
基本的には同じですが、先ほどのPathautoのアップデート動作のように異なる箇所があります。

(1)モジュール一覧

モジュール一覧
 

(2)設定画面

D6(環境設定)

環境設定(D6)

D7(環境設定)

環境設定(D7)


PathautoにあったRedirectの設定箇所とは「」を有効にすればよさそうですが、このボタンを有効にするにはパフォーマンス(admin/config/development/performance)の「匿名ユーザ向けページをキャッシュする」をまずONにしなければなりません。
そもそも、このパフォーマンス画面に追加されている「匿名ユーザ向けページをキャッシュする」はどう機能するのかがよくわかりません。

D7(パフォーマンス設定)

パフォーマンス設定(D7)
 

4.Global Redirect

この機能自体はよく理解していませんが、複数のURLで同じページにアクセスできる事があると思いますが、そういった場合に検索エンジンのほうでURLは違っていても同じページとして扱ってもらえるようにするものかなぁと思います。たとえば、URLの最後が「/」ありなしやクリーンURLとノンクリーンURLのケースです。


(1)モジュール一覧

モジュール一覧
 

(2)設定画面

D6(環境設定)

環境設定(D6)

D7(環境設定)

環境設定(D7)

5.Nodewords(D6) と Meta Tags(D7)

(1)モジュール一覧

モジュール一覧
 

(2)設定画面

D6(環境設定)

環境設定(D6)

D7(環境設定)

環境設定(D7)

6.XML Sitemap

サイトで公開しているコンテンツリストをXMLでsitemap.xmlファイルを生成します。検索エンジンにリストを提供しつつ、サイト内ではメニュー表示に使用したりといったことができるのだと思います。
当サイトでは、ブログコンテンツタイプのみXMLに含めるようにしています。

(1)モジュール一覧

モジュール一覧
 

(2)設定画面

D6(環境設定)

環境設定(D6)

D7(環境設定)

[f環境設定(D7)

7.Robotstxt

Drupalルートディレクトリに配置するrobots.txtをモジュールにしたものです。
デフォルトの状態では、コアに同梱されているrobots.txtと同じ内容だったと思います。
地味なモジュールですが、Drupal管理画面から編集できるという点は便利だと思いますが、編集頻度を考えるとそれほど重宝するものでもなさそうです。
ただ、小さなサイズのモジュールなので導入しても気にならないので使っています。
注意点は、このモジュールを有効にしてあるのであればDrupalルートディレクトリにrobots.txtが存在しないようにしなければならないことです。

(1)モジュール一覧

モジュール一覧
 

(2)設定画面

D6(環境設定)

環境設定(D6)

D7(環境設定)

環境設定(D7)
 

8.Elements(D6のみ)

このモジュールは、Path Redirectモジュールで推奨されているモジュールのひとつです。
効果はわからずに使っています。

(1)モジュール一覧

[モジュール一覧
 

(2)設定画面

ライブラリを提供しているだけのようですので設定画面はありません。

9.Google Analytics

(1)モジュール一覧

モジュール一覧
 

(2)設定画面

D6(環境設定)

環境設定(D6)

D7(環境設定)

環境設定(D7)
 

10.Site Verification

検索エンジン用のサイト認証をサポートするモジュールです。
このサイトではGoogle、Bings、LiveSearchの認証コードを登録しています。
認証にはヘッダーに所定のMetaタグを挿入する方法と認証キーのファイルをサイトにアップロードしておく方法があります。

(1)モジュール一覧

モジュール一覧
 

(2)設定画面

環境設定
 

11.その他

あとは、Rewriteルールの設定やヘッダーに表記する内容などになると思います。また、使用するテーマもSEOを意識したものにすれば上記モジュールとの連携が容易になると思います。
D7ではPathauto+RedirectがどうもD6のときとは違う結果になりそうなので、追加でPathologicモジュールを試してみようかと思っています。

最後に上記モジュールに関連してtokenモジュールが影響しますので、このtokenモジュールについても記載しておきます。

Token

(1)モジュール一覧

モジュール一覧
 

(2)使用可能なトークン一覧

サイトで使用可能なtokenの一覧表示は、ヘルプメニュー(admin/help/token)からアクセスします。

D6(トークン一覧)

トークン一覧(D6)

 

D7(トークン一覧)

トークン一覧(D7)


※使用可能なトークンは導入しているモジュールに左右されると思いますが、D6とD7の環境ではほぼ同じモジュールを導入していますので異なる箇所はD6とD7の相異点となります。それよりも、トークンの分類や文字列がD6とD7とでは異なっていますので、それに関連してURLエイリアスのパターン設定やFileFieldパスなどの記述やViewsでトークンを設定している箇所などはアップグレード後に修正が必要になると思います。仮にトークンをアップグレードしたとしてもトークンを設定している箇所までは更新してくれないでしょう。
 

Drupalバージョン

Drupal 6.x Drupal 7.x サイト管理