第5回「CMSって何だ?」
- #internet
- #HTML
記事を自分でアップする?
ホームページを作成するとき、おそらく必ず「CMSを導入しますか?」と尋ねられます。CMSとは「コンテンツ・マネジメント・システム」のことで、HTMLが書けなくても、管理画面で「見出し」「本文」「画像」などを入れて「公開」ボタンを押すと、WEBページが生成されるという便利なシステムです。(公開予約もできる)
ホームページには1ページずつゴリゴリとHTMLを記述していく「静的ページ」と、先ほど述べたようにCMSを導入して、リクエストをするとその都度ページが生成されて表示される「動的ページ」があります。「静的ページ」だけで作ったホームページでは、更新の度にHTMLのソースを書き換えてFTPでサーバーにアクセスし更新作業を行う必要がありますが、「動的ページ」は誰でも簡単に管理画面からページを更新できるので、多くのホームページにはCMSが導入されています。
CMSにはデータベースが必要
では、どうやって「動的ページ」が生成されるのか、「静的ページ」との違いを見てみましょう。
図のように、データベースを構築し、管理画面から入力してそこにコンテンツの内容を溜めていきます。目次をクリックすると、そのデータベースから必要なデータが抽出され、テンプレートによってレイアウトされてWEBページとして閲覧できるのです。ですから、構築するには、データベースとそれを動かす(たいていはPHPで組んだ)プログラムが必要です。
CMSの中でも世界でもっとも利用されているのは、WordPressです。以前は日本ではなかなか普及しなくて、MovableTypeというCMSがよく利用されていましたが、最近はほとんどがWordPressではないでしょうか? また、独自のCMSを開発されている会社さんもあり、サブスクみたいに毎月の利用料を払うことでそのシステムを利用できる場合もあります。
CMSのメリット・デメリット
【メリット】
・ページの更新が簡単
・きちんと内部構造を作ればSEO対策になり、検索にかかりやすくなる
・目次も自動生成されるため、リンク切れがなくなる
【デメリット】
・構築するのに専門知識が必要
・よく使われるCMSは攻撃を受けやすく、セキュリティが脆弱になることがある
(そのためにメンテナンスやアップデートをきちんと行う必要があります)
・テンプレートに沿ったページは作りやすいが、レイアウトが特殊なものを作りたいときは手間がかかる
・その都度データベースから引き出して表示しているので、ページとしての記録があるわけではない
(なので、バックアップをきちんととることが必要で、また、サーバーが倒れたときに回復するには静的ページより少し時間がかかります)
私の過去の経験ですが、CMSを導入し「商品紹介」というテンプレートを使って、外側の入れ物(テンプレート)は共通だけど、中の商品紹介は個々の内容にするというしくみを作ったことがあります。ところが、WEB完成の最終段階になって、外側の入れ物を商品ごとに変えたいという要望が出され1つひとつが特殊だったため、結局商品の数だけテンプレートを作るしかないという結果になってしまいました(共通部分があればプログラミングで解決できるのですが…)。お客様がページを更新なさるわけでもなく、結局は静止ページを1ページずつ作るのと同じ作業量となり、CMSを導入した意味がなくなったという…。
なので、最初にどういう構造のホームページにするか、共通部分はあるのかどうか、CMS化する部分はどこなのか、どのように運営していくのか(たとえば、ページを制作する人と公開の決裁を出す人が違うのかなど)をきちんと確認してからCMSを導入することをお勧めします。