SEOmozのYouMozブログにて、大規模サイトのパンダアップデート対策を、PHPやMySQLなどのプログラミングレベルで行った際のTIPSが掲載されています。
大きなサイトならあるほど、その対策にかかる工数は大きくまた漏れが出やすい物。
この記事の紹介が、漏れのない対応に繋がればと思いますのでご紹介です。
5つのTIPSです。
目次
5つの対策ポイント
具体的なコードは元記事に記載されていますので、そちらをご参照ください。
▼Scripting SEO: 5 Panda-Fighting Tricks for Large Sites | SEOmoz
1.重複コンテンツを排除する
- 重複コンテンツなんて作らないようにしていると思っていても、時間がたつにつれ発生している可能性がある。
- まずはデータベースを見て、丸ごと同じ文章がないか完全一致で検索。あれば対応。
- なくとも「レーベンシュタイン距離(Wikipedia)」などを使うことで、類似性の高いコンテンツを探し、対応する。このスコアで90以上のものは排除すべき。
レーベンシュタイン距離(レーベンシュタインきょり)あるいは編集距離(へんしゅうきょり)は、情報理論において、二つの文字列がどの程度異なっているかを示す数値である。具体的には、文字の挿入や削除、置換によって、一つの文字列を別の文字列に変形するのに必要な手順の最小回数として与えられる。(http://goo.gl/1QCNj)
2.すべての記事にスペルチェックをかける
- スペルミスが多い記事は、ブロークンイングリッシュなことが多い。そういった言葉遣いの記事は大概にして質が悪い。
- スペルミスが多い記事をあぶり出し、それらをチェックして品質が低いと感じたら排除する
- PHPなら、ビルトイン関数のsoundex()や先ほどのlevenshtein()を使う。
- 一番いいのは「Portable Spell Checker Interface Library (Pspell)」を使うことだ。
3.rel=”canonical”をまとめてつける
- WordPressなら「ALL in One SEO Pack」などのプラグインで対応する。
- そうでなければ、特殊タグなどを調べて、使えそうなものがないか調べる(MTではありました)
- そうでない環境の場合は、筆者が作った「getCanonical」というPHPスクリプトを使ってみてね。
4.Wordのスマートクオートを排除する
- スマートクオートは引用符を勝手にブラウザが認識でない、表示できないものに変えてしまい問題になっている。ただ、日本語の場合は関係ないので、無視してOKです。
5.間違っている短縮形をSQLで一気に置換する
- 言葉のとおり。
- UPDATE articles SET text = REPLACE(text , “dont’ “,” don’t ” )}などとする
- コードのサンプルはこちら(PASTEBIN)
- ※日本語ではちょっと勝手が違うか…
英語圏だから通用するものもありますが、スペルミスや類似コンテンツを発見する仕組みは、あらかじめシステム側に入れておいてもいいのではと思います。
本当に狙っておらずとも、引用元が同じだったりすると類似コンテンツになるほど似てしまうこともあるので、記事作成時に教えてあげられるようになると、きっといいのではないかと思います。
そして、タイトルのとおり、大規模サイトではこつこつとした修正だときりがないので、まずは大方をこれで片付けてしまいたいですね。
Discussion about this post