外部ファイルを使う
外に追い出そう
ファイルの数が増えてくると、複数のファイルで共通している部分などが出てきます。アフィリエイターをやっていると、例えば企業のトップページへ飛ぶバナー広告や、アマゾンなどの検索ボックスなど。最近ではグーグルの検索ボックスも良く見かけます。こうしたものは、多くのページに共通して出てきます。
もちろんページ数が少なければ全部のページに必要なHTMLコードを直接書き込んでもさほどの面倒にはなりませんが、例えば10ページ、さらに100ページとなってきたら、ちょっとうんざりです。もし間違ったものを書き込んでしまったら、全部やり直し…。ぞっとしますね。
そして、広告とか、外部から提供されているコードはこちらの都合には関係なく変更が行われたり、広告そのものがなくなってしまったりもします。また自分の都合で別のものに切り替えたい時もあるでしょう。ValueCommerce の中での広告切り替えなら別のところに書いた広告スペースで対応できますが、ValueCommerce 経由の広告を LinkShare 経由の広告に変えようとしたらそうは行きません。そんな時に100ページ手作業…少なくとも僕はしません。
そんな時に使えるのが外部ファイルです。何らかの形でページの一部、この場合なら広告の部分を外のファイルに出してしまい、各ページからはそのファイルを参照して表示するようにします。
フレームはだめ
手段はいくつかあって、一番ポピュラーなのがフレームを使うもの。縦や横に分割されて、例えばメニューが独立してスクロールできるような構造のページを見たことがあると思います。確かにわかりやすく使いやすいですが、フレームは検索エンジン対策が立てにくい、フレームの一部のページに入られてしまうと全体表示に導くのが困難、などの問題があります。フレームは、検索エンジンの時代になる前に、トップページのリンクから表示していく、ということを前提として考えられたものなのでしょう。
その他の手段
その他にも外部ファイル参照にはいろいろな手段があります。例えばインラインフレームというもの。ただ、インラインフレームの中に表示されるファイルは、まったく独立したファイルですので、体裁などのコントロールがしにくい場合があり、必ずしも使いやすい方法ではありません。また、インラインフレームの中にメニューなどを記載した場合、表示されているページからのリンクとはみなされませんから、SEO上も注意が必要になります。
さらにはSSIというもの。これは融通が利きますが、サーバーが対応していないと使えません。
さらにさらに突き進めば、PHPなどのプログラムの利用も考えられますが、これまたサーバーが対応していないと使えません。
ではインラインフレーム同様、サーバーに関係なく使えて、もっと手軽で融通が利くものはないかというと、Javascriptがそれにあたります。Javascript と言うと、ホームページ作成の本などにはゲームを表示するとか、画像を入れ替えるとか、「本当に必要かいな?」と首をかしげるような例ばかり載っていますが、実に便利な使い方があります。
Javascript とは?
Javascript というのも一種のプログラムですが、ブラウザーが理解して実行できるものです。それはHTML文の中、つまりは通常のホームページのファイルの中に埋め込んでおくこともできますし、外部におくこともできます。例えば外部に置くには以下のような記述をHTML文の中にします。
<script language="JavaScript" src="footer.js"></script>
この例では footer.js というのが Javascript の本体が書かれたファイルで、それを読み込んで実行しろ、というのがこの一文の意味です。
もちろんプログラムですから、いろいろなことをすることができるのですが、このページの趣旨は外に置いたファイルを参照して表示することです。そのためには以下のような文を Javascript のファイルの中に書き込みます。.js ファイルは単なるテキストファイルです。
<!--
document.write('ここに表示したいものを書く');
//-->