本文へ

ここから本文です

CMS Watch:SEOとCMS /CMS導入時にSEOのベストプラクティスを組み込むには?

2007年11月22日 掲載

Randy Woods /ランディ・ウッズ、Julie Batten /ジュリー・バッテン

WCM(ウェブ・コンテンツマネジメント)のソリューションを使うことで、ウェブサイトのレイアウトやプレゼンテーションを一元管理できるようになることから、WCMを様々なSEO(検索エンジン最適化)強化のために適用することもできる。SEOが配慮されたCMSを導入すると、コンテンツのインデックス化を簡単に行い、検索結果のランキングを向上させるのに役立つ。さらに、サイトに追加された新しいコンテンツが検索エンジンに適したフォーマットで表示されることをCMSが保証してくれるのであれば、まさに理想的といえる。

今回の記事では、よく知られたSEOの戦術を組み込むために、CMSをどのように設定すればいいかを紹介していく。ほとんどのCMSが持っている機能に照らし合わせて、SEOの戦術を以下のようにカテゴライズできることが分かっている。

それでは、各カテゴリーを順番に見ていこう。

システム全体にわたる課題

W3C準拠コードの徹底

標準に準拠したコードが主要な検索エンジンで厚遇されるという事実は、よく知られていることだ。成熟したレベルにあるCMSソリューションのほとんどでは、テンプレート内で扱えるコードをあらかじめ定義し、コンテンツ提供者によるページレイアウトの大幅な変更を禁止することで、コードの扱いを「徹底」できるようになっている。しかし、純粋にCSSをベースとしたレイアウトのサポートとなると、システムによって状況は異なり、ビジュアルなテンプレートビルダーを搭載したCMS製品のなかには、今でもテーブルを基本としたレイアウトをデフォルトとしているものもある。

これらのテンプレートを実際に使用する前にバリデート(検証)することによって、レイアウト自体を確実にW3Cに準拠させることができる(テキストのコンテンツは別問題のため、これについては後述する)。CMSソリューションのなかには、オプショナルなコードのバリデーションユーティリティを統合しているものもある。サードパーティのバリデーションツールも、例えばWatchfire.com[watchfire.com]などで提供されている。

サイトマップの作成

検索エンジンは、クロールできるサイトマップが大好きだ。そして、事実上すべてのCMSソリューションが、サイトマップの自動作成や自動更新機能をサポートしている。現在のSEO実践の場では、1ページ内のリンクを100個以内に抑えるのがベストとされているが、もちろん、これは将来変わる可能性がある。つまり、重要なのは、スパイダーがサイト内の全コンテンツにすばやくアクセスできるように、CMSを用いて階層的なサイトマップを作成できるかどうかなのである。

また、GoogleとYahoo!は、今ではサイト管理者が提出する特別なXML形式のサイトマップを受け付けている。正確なクローリングを促すためだ。しかし、私たちが知り得た範囲では、成熟したCMSソリューションで、GoogleとYahoo!のためのサイトマップを作成する機能を標準装備しているものは存在しない。とはいえ、適度なスキルがある開発者ならば、オープンなコンテンツモデルを使ってどんなCMSでも拡張し、この種のサイトマップを必要なフォーマットで作るように設定できるに違いない。問題は、コンテンツが更新されたことを検知して、それをサイトマップに確実に反映されるようにすることだ。

検索エンジンに適したURLの徹底

CMSソリューションのアーキテクチャは、大きく2つのモデルに分けられる。

このトピックについては、検討すべき点が様々あるため、ややスペースを割いて説明していきたいと思う。

まず、ディレクトリの構造が問題になる恐れがある。ウェブページがサイト内の「深い」場所にあればあるほど、検索エンジンがそのページを重要視しなくなるという議論については、いくつかの確証が得られている。一方で、ユーザビリティの専門家のなかには、意味的(セマンティック)なディレクトリ構造を使うことによって、ビジターのナビゲーションが楽になると主張する者もいる。どちらにしても、成熟したCMSであれば、サーバ上でのコンテンツの物理的なロケーションとは関係なく、CMS内で独自にコンテンツを階層化して整理できてしかるべきだ。そのようなシステムであれば、実際のウェブサイトのディレクトリから見て取れるよりもはるかに複雑な方法でCMS内を整理しておきながらも、ディレクトリ構造上では「浅い」場所に発行することによって、ランキングの向上に役立てることができるかもしれない。

これに関連した点として、既存のURL構造をどこまで新しいシステムで管理できるかという問題がある。顧客が時間をかけて確立してきた検索エンジンでの地位を台無しにしてしまうCMSベンダーの数は少なくない。長い間使ってきたURLを突然変更すれば、ランキングが下がってしまうことになりうる。 エイリアスの使用がリダイレクトを意味するのであれば、それらが別のURLへのパーマネントリダイレクト(301)となっていることを確認しなければならない。主要な検索エンジンでは、パーマネントリダイレクトが不利になることはないが、他のタイプのリダイレクトは不利に働くことがある。特に、1つのページに対して2つのインスタンスを作成し、異なるURLから同一のコンテンツにアクセスできるようにするシステムは、避けたほうがいいだろう。重複したコンテンツは、検索インデックスでは「スパム」と見なされるリスクをはらんでいる。

動的に生成されるURL自体は、おそらくランキングを下げる理由にはならないだろう。ただし、SEO専門家のなかには、URLに含まれる変数を最低限に抑えるべきだと論じている人もいる。いずれにしても、セッション変数を使うことだけは避けておいたほうがいい。セッション変数は、クッキーの代替として最も頻繁に使われている。これは、ある時点のステータスを維持することによって、1人のビジターの1回の閲覧中の行動を追跡できるようにするものだ。セッション変数を割り当てるCMSを使っている場合には、2つの選択肢がある。ひとつは安全なアプローチ、もうひとつはリスク発生の可能性があるアプローチだ。

  1. ステータスを維持する手段として、セッション変数をクッキーに代えるかどうかを検討する。CMS製品の多くは、そのための設定オプションを提供している。 ただし、ビジターのなかにはクッキーを拒否する人も多く、その割合は増えていることを認識しておく必要がある。結果として、このアプローチは、ステータスの維持が非常に重要なシステム(一部のショッピングカートのシステムなど)にとっては、あまり有効ではないかもしれない。その場合は、ステータスの維持がどうしても必要なウェブサイトの一部に限って、セッション変数を使用できないかどうかを考える必要がある。
  2. リスキーなアプローチでは、検索スパイダーを特定しておいて(これにはIPアドレスやユーザーエージェントを使う)、コンスタントに同じセッション変数を割り当てるよう、システムをカスタム設定することになる。これによって、検索エンジンは毎回同じページを認識できるようになるため、セッション変数の問題は解決される。しかし、検索エンジンのスパイダーを一般のビジターと別扱いすると、「クローキング」とみなされる危険性がある。クローキングは、SEOの観点からはタブーともいえる戦術で、検索結果のリストから永遠に追放されてしまう危険性すらはらんでいる。

何はともあれベストなのは、URLにセッション変数を必ず挿入するようなCMSは、使わないようにすることだろう。

リンク切れの除去

リンク切れがあると、サイトの権威が失われるうえ、検索エンジンのインデックスにおけるコンテンツのランキングも下げてしまう恐れがある。CMSソリューションの多くは、内部リンクを個別のオブジェクトとして扱い、同じシステムで管理している他のコンテンツに対して無効なリンクが含まれたコンテンツは、発行しないか、あるいは無効なリンクを単純に取り除くという処理方法をとっている。しかし同時に、こうした内部的なバリデーションは、発行時のパフォーマンスを低下させ、ワークフローの妨げとなってしまうかもしれない。そのような場合は、別のリンクチェッカーを常用するといいかもしれない。単体のリンクチェッカーでは、便利なことに、外部リンクのバリデーションも可能なものがある。

robots.txtの適切な使用

CMSソリューションのなかには、エンドユーザーがrobots.txtをページごとに制御するのを認めているものもある。しかしほとんどの場合は、その定義をサイト開発者に任せているのが現状だ。

robots.txtは絶対に必要というものではない。これがないことによって最も影響を受ける点と言えば、サーバログで404エラーが作成され、ウェブログ分析ツールを混乱させることくらいだ。しかし、robots.txtを使用すると決めたのであれば、サイトのコンテンツへのアクセスを正確に定義する有効なファイルとすることが、きわめて重要だ。使用方法を誤ると、サイト上のコンテンツの一部が、主要な検索エンジンによってインデックス化されなくなってしまうかもしれない。

いずれにしても、robots.txtをCMSのアセットとして登録し、権限を持たないスタッフが許可なくこのファイルに変更を加えるのを禁止しておくことはできる。robots.txtに関するワークフローを定義して、システム管理者によるレビューを要求するようにしておくのも、有効なアプローチとなるだろう。

テンプレートレベルでの課題

散在する不要コードの削減

ページ上のテキストを明確に目立たせることは、SEO戦術のなかでも最もシンプル、かつ有効な方法だ。

たいていの成熟したCMSソリューションには、ページフォーマットの制御にCSSを使うオプションが盛り込まれている。CSSベースのデザインを用い、そのデザインの変更を禁止することによって、CSSがない場合に必要となるようなHTMLコードのほとんどを排除できるようになっている。

JavaScriptを使うのであれば、ページのボディにそれを置くのではなく、インクルードファイルとして、確実にそのコードが統合されるようにしなければならない。これをテンプレートレベルで定義することによって、サイト全体に一貫して適用できるようになる。

テキスト記述によるサイトナビゲーションの作成

サイトのデザインテンプレートを作る際は、サイトへのアクセスを構造化するリンクなどのナビゲーション要素が、画像やAdobe Flashといったオブジェクトではなく、シンプルなテキストリンクになっていることを確認してほしい。そして、CMSテンプレートのサブシステムを使って、このナビゲーションを徹底する必要がある。

多くのCMSソリューションでは、「ブレッドクラム(パンくず)」を自動作成して、ビジターに現在地を示せるようになっている。この機能を使って、一貫性のあるキーワードを豊富に含んだテキスト要素を各ページに作成するといいだろう。

スパイダーが処理できるリンクの作成

テンプレートを作る際は、JavaScriptやFlash内にURLを埋め込まないほうがいい。CMS製品のなかには、JavaScriptベースで動的にナビゲーションモジュールを扱う機能を搭載しているものがあるが、これを用いるのは避けるべきだ。

以前ならば開発者がJavaScriptを使って作っていた視覚効果の多くが、今ではCSSで再現できるようになっている。注意深く開発していけば、ロールオーバーやフライアウトメニュー、サブメニューといった効果は維持したまま、標準的なテキストリンクを提供できるはずだ。

ページレベルでの要因

効果的なtitleタグの作成、URL内でのkeywordの使用

検索結果のランキングに際してtitleタグが最も重要な要因のひとつになっていることは、すでにご存じだろう。一貫性のあるtitleタグ、meta description、keywordを確実に活用していくには、CMSの編集画面を変更しなければならないかもしれない。もちろん、ページのタイトルは、検索結果のためだけではなく、人間にとっての読みやすさにも関係している。人間にとっての読みやすさを重視する企業であれば、CMSと編集プロセスを次のように変更するに違いない。

  1. ドキュメントを完成する前に、そのドキュメントに関係する3つの検索語句を入力するよう、コンテンツ作成者に義務付ける。その際、3つの検索語句は重要性の高い順に入力するよう徹底する。
  2. CMSは、この3つの語句を、そのページのtitleタグに自動的に組み込む。
  3. CMSは、そのページを保存する際、1番目の検索語句を含んだファイル名を自動的に付ける。

すべてのCMSがこれらに対処できるわけではない。特に3つ目の機能を実装するには、通常は、開発者によるカスタマイゼーションが必要だ。

その代わりとして、編集フレームワーク内でコンテンツ作成者に詳細な手順説明を提供することはできる。ただしこれは、編集用のユーザーインターフェースが簡単に変更できるCMSだと仮定してのことだ(そうでない場合は、たぶん、裏技を見つけることができるだろう。例えば、エディタ上にある既存の画像を、手順説明を含んだグラフィックに置き換えるなどだ)。コンテンツ作成者が踏襲すべき手順は、(1)検索語句を選び、(2)それをファイル名に使用し、(3)さらにtitleタグにも使用する、となる。

何よりも気をつけなければならないのは、重複したタイトルを付けてしまわないようにすることだ。コンテンツ作成者が指定した検索語句でtitleタグを自動生成するという前述した推奨アプローチをとることによって、重複したタイトルが作られてしまう確率は減らせるはずだ。

ページタイトルの重複が大きな懸念になっている場合、そしてCMSに十分な重複チェック機能がない場合は、次のような対処策もある。何らかの合理的かつ固有な変数(発行日や時刻など)をタイトルに含むことだ。これにより、複数のタイトルがまったく同じものになることはなくなる。理想的な解決法とはとても言えないが、ほとんどのCMSソリューションがサポートしている機能ではある。

効果的なmetaタグの奨励

最近の検索エンジンは、ページランキングにmetaタグの記述を使わなくなったように見受けられる。しかし、metaタグは、検索結果ではよく使われることから(サイト内の検索エンジンでもそうあるべきだ)、SEO戦術の欠かせない一部となっている。

成熟したCMSソリューションでは、descriptionを含むmetaタグの定義をコンテンツ作成者に義務付けることができるようになっている。meta descriptionの入力を義務付けるには、CMSを使うと良いということだ。そして可能であれば、編集インターフェースに手順説明を組み込んで、ビジターにアクションを起こさせるようなキャッチフレーズをdescriptionタグの一部として記述するよう、コンテンツ作成者に促していくのがいいだろう。

効果的なコンテンツのマークアップ

優れたCMSソリューションのほとんどは、リッチテキスト(WYSIWYG)エディタでコンテンツ作成者向けが扱えるコントロールを指定できるようになっている。このコントロールをカスタマイズし、定められた方法でのみ使うように働きかけることは、SEOの効果を高めるうえで非常に重要だ。

特に、 <h1> <h2> <h3> といった見出しをリッチテキストエディタで使えるようにすることをお勧めしたい。そしてCSSを使って、見出し用のタグがビジターに対してどう表示されるかを指定しておく。フォントサイズの制御は解除しておく。そうすれば、テキストサイズを制御するにあたって、コンテンツ作成者は見出しをうまく扱うようになるだろう。

画像のalt属性の徹底

検索エンジンは、画像のaltタグをインデックス化している。成熟したCMSソリューションのほとんどでは、画像に対するalt属性の定義を義務付けることができる。コンテンツ作成者がページを作成する際、あるいは画像をデジタルアセットライブラリにアップロードする際に義務付ける方法がある。

可能であれば、CMSのインターフェースに手順説明を統合し、検索エンジンのインデックス化に適した詳細な画像解説記述を付けるように、コンテンツ作成者に徹底するといいだろう。

スペルミスの回避

ほとんどのCMSソリューションでは、中心的な製品(たいていはリッチテキストエディタ内)の一部またはオプションのモジュールとして、スペルチェックの機能が統合されている。

スペルチェック機能があるCMSであれば、コンテンツ作成者がワークフロー上でドキュメントを提出する前に必ずスペルチェックを行うように、義務付けておくといいだろう。CMSにスペルチェックの機能がない場合は、オープンソースのスペルチェッカー[sourceforge.net]で検索すると適当なソリューションを探せる)の統合を検討してほしい。

コンテンツの重複回避

主要な検索エンジンでは、コンテンツの重複があると不利になる。このことから、コンテンツの重複を避けるのは重要だが、実際には難しいことでもある。コンテンツ作成者が、既存のコンテンツをテンプレートとして使い、ちょっとした変更を加えただけで新しいページとして発行することもあるだろう(さらに検知するのが難しいのは、競合他社や善意のパートナーが、あなたの会社のサイトからコンテンツを「拝借する」ような場合だ。しかし、これは別問題と言えよう)。

私たちが知り得るかぎりでは、広く使われているCMSのなかに、コンテンツの重複チェック機能をあらかじめ搭載している製品は存在しない。PHPベースのCMSの場合は、ワークフローの一部として「Duplicate Check[duplicatecheck.com]」を統合することを検討してもいいだろう。

SEO分野での多くについていえることだが、ここでのポイントは、コンテンツ作成者の仕事の結果がランキングにどう影響するかを、作成者自身にしっかりと認識してもらうことなのである。

何はともあれ、ご健闘をお祈りします!Googleでお目にかかれますように。

ランディ・ウッズの写真ランディ・ウッズは、インターネット技術とマーケティング・コンサルタントを手がけるnon-linear creations(NLC)[nonlinear.ca]のエグゼクティブ・バイスプレジデント。1995年にNLCを設立し、以来、企業戦略の立案や新規事業分野の開発において、重要な役割を果たしている。

ジュリー・バッテンの写真ジュリー・バッテンは、non-linear creations(NLC)[nonlinear.ca]のSEMソリューション部門でマネジャーを務め、SEMチームを管理している。このチームでは「オーガニックSEO」という手法を用いて効果を生み出すほか、ペイ・パー・クリックSEMキャンペーンなども手がけている。

この記事の原文「Embedding SEO Best Practices in CMS Implementations」は、non-linear creations(NLC)によるホワイトペーパー「SEO and CMS: Implementing Best Practices[nonlinear.ca](SEOとCMS:ベストプラクティスの導入)」から抜粋され、2006年8月20日、「cmswatch.com」に掲載された。

本サイトに掲載している CMS Watch の記事は、CMSWatch.com より許可を得て、翻訳・転載しているものです。

CMSWatch.com は、ウェブ・コンテンツマネジメントおよびエンタープライズ・コンテンツマネジメント・ソリューションについて、ベンダーから完全に経済的独立をした形で、利用者の立場に立って、独自の情報やトレンド、意見、評価を提供しているサイトです。

CMS Watch はまた、最新の CMS 関連の製品分析やアドバイスが掲載されている The CMS Report の販売(無料サンプルあり)もしています。
The CMS Report について


トラックバック

このページのトラックバックURL
http://www.designit.jp/mt/mt-tb.cgi/1128