前回 SQL文の話をしました。
もう一度、復習してみましょう。
SELECT 氏名,電話番号 FROM 名簿 WHERE 都道府県='東京都' ORDER BY 年齢
という文でした。
ここで、
SELECT 氏名,電話番号
これは、「列」として「氏名」と「電話番号」2列を抽出対象としたということですね。
つまり列を絞り込んでいる訳です。
次に
FROM 名簿
これは、「名簿」というテーブルが対象になっているということです。
次に
WHERE 都道府県='東京都'
これは、「都道府県」に'東京都'というデータが入っている「行」を抽出対象としたということです。
つまり行を絞り込んでいる訳です。
なお、条件を複数結ぶ場合は、~かつ~の場合には
WHERE 都道府県='東京都 and 年齢>=20 and 年齢<30
のように、andで結んでいきます。
上記の場合は、年齢が20代という意味になります。
または、の場合にはorで結んでいきます。
条件をどの様に優先するかは、ちょうど数学の計算のように、優先する部分をカッコで括っていきます。
WHERE 都道府県='東京都 and (年齢<20 or 年齢>=30)
上記はカッコがあるのと無いのとでは、条件が違ってきますよね。
ご不明の場合は、メールください(笑)。
次に
ORDER BY 年齢
年齢の小さい順ということになります。
取り出した固まりを、頭からピックアップした時の順序です。
なお、大きい順の場合には、最後にdescを付けます。これで降順の意味になります。
さて、これをホームページ作成とどう結び付けるのか。
講座09のパーツを引用します。
<div style="padding:20px;float:left">
<div style="border:solid 3px black;width:100px;height:80px;padding:10px;">
<span style="font-size:1.5em; color:red;">タイトル</span><br />
<span style="font-size:0.8em; color:green;">(テーマ)</span><br />
<span style="font-size:1em; color:black;">ああああああ</span><br />
<span style="font-size:0.8em; color:blue;">2009/8/30</span><br />
</div>
</div>
この中で、可変データは、
タイトル
(テーマ)
ああああああ ←本文
2009/8/30 ←日付
この4つですね。
この4つの項目について、データベースに格納されているとして、SQL文にて抽出した結果を、順序良くハメ込み合成して、矩形のパーツとして並べていけばホームページのコンテンツとなっていく訳です。
さて、ハメ込み合成をしなければなりません。
どうしたらいいのでしょうか。
その答えは、そのデザインの中に可変データが入るということが分かる記号を入れておけばいいのです。
例えば
[$$$1]
[$$$2]
[$$$3]
[$$$4]
これを当てはめておきます。
意味的には、1項目目~4項目目ということになります。
こうなります。
<div style="padding:20px;float:left">
<div style="border:solid 3px black;width:100px;height:80px;padding:10px;">
<span style="font-size:1.5em; color:red;">[$$$1]</span><br />
<span style="font-size:0.8em; color:green;">([$$$2])</span><br />
<span style="font-size:1em; color:black;">[$$$3]</span><br />
<span style="font-size:0.8em; color:blue;">[$$$4]</span><br />
</div>
</div>
これをデザインテンプレートとして、やはりデータベースに格納しておきます。
そして、データベースから取り出した行ごとに、各項目を[$$$1]~[$$$4]にハメ込んでいけばいい訳です。
こういった考えで合成し表示したものが、ブログ記事として閲覧されている訳です。
(記号はあくまで弊社のソフトウェアの例です。各システムごとに様々な工夫をしています。)
ですから、上記テンプレートを複数用意しておけば、デザインはすぐに変わるということがお分かりいただけると思います。
なお、CMSには静的配信と動的配信という二つの方式があります。
静的配信・・・予め、静的なhtmlを作成してしまう。
動的配信・・・閲覧された時点で、htmlを作成し表示させる。
Movable Typeは静的・動的配信の両方、wordpressは動的配信方式をとっています。
(弊社のソフトウェアは動的配信方式をとりました。)
動的配信方式は、表示時間がかかると懸念されますが、現在はサーバおよびネットワークが高速になり、その差は体感的に感じられません。
また、動的配信はSEO(検索性を良くすること)対策としては良くないと言わる場合がありますが、URLを打ち込んでページを読み出し、それを表示するという過程と、表示された結果のhtmlについて、動的配信と分かる要素はありません。
ですから、SEO対策として両者の差は無いと言えると思います。
実験した結果でも、そうでした。
(感覚で物を言う人が多いですね。実験しなければダメですよ。)
この様に、CMSを導入してみると、これがもの凄く便利です。
極端な表現をしてしまえば、htmlを忘れてしまいそうなくらいです。
市販されている「テンプレート」というものは、上記の[$$$1]みたいな部分が注釈になっています。
これを、エディタを使って、1件ごとに手作業でハメ込み合成していくんですよね。
これが数件のデータぐらいだったら、すぐに終わるでしょうけれども、例えば千件の商品データだったらどうでしょう。
日が暮れても終わらないですよね。
閲覧要求があった時に、コンピュータに自動的にハメ込み合成をさせて、表示させる様な仕組みを作っておけば、人間は更新の組み換えをしなくて済む訳です。
デザインの変更があった場合にはデザインテンプレートのみを変更する。
データの追加・変更・削除があった場合には、データベースに対して直接メンテナンスを行う。
これでいい訳です。
どうでしょうか、CMSの便利さが分かっていただけましたでしょうか。
ただ、趣味でホームページを作成している程度の方は、この便利さはあまり実感出来ないのかもしれません。
最も必要としている方、それはWebデザインを直接職業としてやられている方だと思います。
CMSによって、仕事の仕方が変わってきます。
デザインをする方、構成をする方、記事(商品)のメンテナンスをする方等、分業を進めることが出来ます。
また、最後の「記事(商品)のメンテナンスをする方」は、ブログに投稿する様な感覚で出来るので、Webデザイナーではなくて、ホームページの依頼主が直接やれる可能性があります。
いずれにしても、直接手がけるので無いにしても、CMSという存在を意識していて損は無いと思います。
特に、めんどくさがり屋さん程、システムを活用すべきだと思います。
そして、世界への情報発信機であるホームページを充実させて、インターネットを活用していただきたいと思います。
ちょっと長くなりましたが、本日はここまで!
- - - - - - - - - -
Ads by Ompooooooooookan
記事クリエイター http://ompookan.jp/shop2/kiji01.html
効率の良いホームページ作成ツールはこちら