山梨県でホームページの制作をしています。コンテンツを重要視した使いやすいWebサイトを提供します。
2009-11-06

グローバルエリアがフレームのサイトってまだあるんだ

この記事は2009年11月に書かれたもので、内容が古い可能性がありますのでご注意ください。

ビジネスサイトなのにiframe、コレで良いの?

<iframe>タグって便利ですね。

サイトのレイアウトで全頁共通の部分(ヘッダ、メニュー、フッタ)なんかを<iframe>というHTMLタグをつかって別のHTMLから読み込む方法です。

これを使えば、読み込んでいるHTMLファイルを更新すれば全てのHTMLの共通部分が更新されるわけですから、サイトの運営は楽チンです。

でもサイトの運営者の都合で大事なものを忘れてる気がしませんか?

SEOには良くないです

どんなに便利でも、<iframe>で読み込まれたHTMLはあくまでも外部ファイルです。 検索ボットがせっかくサイトを訪れても、外部ファイルのリンクをたどってサイト内をクロールすることはありません。

 iframeで読み込まれたほうのHTMLファイルにボットが訪れれば、サイト内をクロールされますが、これはありえません。

 何故なら、読み込まれるパーツのほうのHTMLは、単独で検索エンジンに登録されても困ってしまいますよね。

だから…

<meta name=”robots” content=”noindex,follow”>

↑ こんな感じで、検索ボットにインデックスをキャンセルさせたりすることになるんじゃないでしょうか?

アクセシビリティにも良くない

アクセシビリティも同様です。 例えば盲人の方が使う、読み上げブラウザでは<iframe>で読まれた部分は、読み上げられないでしょう。
 残念ながら直帰されてしまいます。

やっぱりiframeは使わないに越したことはない

結局、個人で趣味のホームページをやっているのであればいざ知らず、<iframe>でグローバルエリアを読み込むのは止めましょう。

それから、Javaスクリプトのdocument.writeで外部ファイルを読み込むのも同じです。
ブラウザ上で機能するスクリプトですからdocument.writeで書かれたリンクも検索ボットには無視されてしまいます。
noscriptという手もありますが、そもそもコレをするんだったら、更新の作業効率アップには殆どメリットがないですね。

最近のWebサーバはほとんど、サーバサイドスクリプトが使えます。
PHPであればinclude関数なんて方法もあります。

関連記事