MT:MovableType初心者でも必ず作れる(?)サイト制作を考えてみる

(2010年3月20日 22:58) | コメント(0) | トラックバック(0)

2010_03_21_title.jpg

なんかすごいタイトルでスイマセン・・・。
こういうタイトル画像が作りたかっただけなんです・・・。

さて。

MovableType(以下MT)に初めて触れた時、正直いって何をどうするべきかサッパリ分かりませんでした(笑)
しかしプログラミングが出来なくても更新性の高いサイトが構築できるという事は大きな魅力ですよね。

タイミング良く現場で「MTを利用してサイトを制作して欲しい」との要望も出た為、よくわからないながらも制作してみたのがきっかけでMTをよく触るようになりました。

以前、既存サイト内にブログを設置する仕事があり、WordPressで作成したブログから記事を抜き出してPHPで既存ページに埋め込む作業をした事がありました。
その時に「なるべく考え方を単純にして最低限のソースだけを扱う」と決めて作業をしました。それが功を奏し、比較的短い作業時間でサイトへの組み込み作業を終了させる事が出来ました。

MTでも同じ様に「最低限のソース」だけで作業すれば誰でもサイト制作に利用できる筈!と考えました。

下準備

ここでは「頻繁に更新の必要があるページの本文だけをピンポイントで更新できれば良い」という事にして話を進めます。

  1. MTで更新予定の部分以外の全てをあらかじめ完成させておきます。
  2. MTをサーバーにインストール。インストールが完了したらテンプレートを全て削除してしまうのがお勧め。とっておくと余計な混乱を招くので。
  3. テスト用で構わないので記事を一つ作成。記事のID番号を取得しておく(IDについては後述)。

組み込み

あらかじめ制作済みのサイト側で、MTで更新したいページの更新したいコンテンツ部分にMTタグを記述。記述内容は後述を参考に。
MTタグの記述を終えたらそのファイルをそのままMTのテンプレートにするのでファイル名を「mt_temp.html」とか分かりやすい名前にしてお く。

MTで更新する部分以外は通常通りに完成させてしまう

サイトをサーバーにアップロード。

MTのテンプレートメニューから「インデックステンプレート」を新規作成。テンプレートの設定部分から「ファイルへのリンク」で先ほどの「mt_temp.html」などのファイルを指定。出力ファイル名を実際のサイトで使用する名前を記述して保存する。

テンプレートとして制作したファイルを読込ませる

 

「サイト再構築」させる。再構築が終わったらテスト用に作成した記事の内容がサイトに反映されるかをチェック。

MTで更新したいページ分だけ名前を変えて同じ事を繰り返す。

と、一気手順をに書いてみました。わかり難いですかね?
一応ググリ易いように制作上のポイントになるキーワードを入れながら書いたつもりです。
  

完璧なCMSを作る事にはこだわらない

前述では説明を飛ばしたMTタグについての簡単に解説させて頂きます。

MTに初めて触って難しいと感じたりつまずいたりするのは多分制御系のタグ。
プログラムを書いている人にとっては何て事のないタグだと思いますが、苦手な人はここで尻込みしてしまう事もあります。

ならば思いっきり単純化して最初は<MTEntries>とその周辺で使うタグだけ覚えればいい事にすればグッと敷居が下がり、簡単に使えるようになりますよね。

例1:記事のIDを固定してしまう考え方

<MTEntries id="1">
<!--記事のタイトル-->
<h2><$MTEntryTitle$></h2>
<!--記事の内容-->
<$MTEntryBody$>
</MTEntries>

「IDが1の記事(MTEntries id="1")のタイトル(MTEntryTitle)と記事(MTEntryBody)」を表示するというだけの内容。

この作り方の特徴は

  • 更新したいコンテンツのエントリー画面は一つだけなので分かり易い

まぁこれだけなんですけど。
ではIDの解説です。

記事はそれぞれ固有の「ID」をもっています。エントリー編集画面(ブログ記事の編集画面)を開いている時にそのページのURLを見ると記事のIDが表示されています。複数のブログを作成している時はブログのIDも表示されます。

ちなみにこの記事のIDはURLに「id=53」と表示されています。
 記事のIDとブログのIDが表示されている

これは WordPressでも同じ様に特定の記事をID指定で呼びだすようにタグを入れていけば簡単に管理画面を利用して更新可能なWEBサイトが出来上がるわけです。

ID固定で表示させる

まあ、これは一番簡単な作り方で、急いでいる時にサイト全体の内の数ページでやった事があります。
実務で全ページこれだったら多分怒られます(笑)まかりなりにも数万円のライセンス料を支払ってMTを導入しているワケですからねぇ(苦笑)。
こういう作りで済ませてしまうならWordPressの方がいいですね。無料なんで。

例2:1コンテンツ1カテゴリーにしてしまう考え方

<MTEntries category="News" lastn="1">
<!--記事のタイトル-->
<h2><$MTEntryTitle$></h2>
<!--記事の内容-->
<$MTEntryBody$>
</MTEntries>

「Newsとういうカテゴリー(MTEntries category="News")の最後の一つ(lastn="1")」を表示するという内容です。

先ほどよりもうちょっとだけ機能性もたせたのがこの2番目の方法です。

こちらはこんな機能があります。

  • 過去記事を保存しておける
  • 記事の投稿予約が出来る(サーバー環境により左右されます)

先ほどの例1の時では「ID」を特定していましたが、今度はそれを「カテゴリー」にしているだけです。
このやり方にすると、現在表示させている記事の他に同じカテゴリーとして過去記事や公開前の記事を下書きとして保存して置けます。
この例では「test」というカテゴリーの記事の中で最新のものが一つだけしか表示されないのですが過去の記事に戻したい時などは新しい記事の「公開状 態」を未公開にすれば良いわけです。

特定カテゴリーの最新記事一件を表示させる

また、サーバーの都合で「cron」が使えるのならば予約投稿の機能を使って指定日時に記事を入れ替える事ができます。
先ほどよりもひとつ機能が増えました。
※cronとはunix系のマシンでコマンドを自動実行させるプログラム。実は使えないサーバーって多いんですよ。そんな時はほぼ指定日投稿なんてプラグインもあったりします。

この例では「lastn="1"」にしていますがコレを「lastn="5"」とかにして更に日付を表示させていくと通常のブログのような見た目になっていきます。

カテゴリーの使い方は工夫次第で面白いことが出来ますので慣れてきたら色々実験してください。

余談:パーツのモジュール化について

MTには「パーツのモジュール化」する機能があります。サイトを様々なパーツに分割して管理する方法です。
モジュール化は便利ですが、僕の場合それが必須だとは考えていません。

この記事では「MTで更新する部分以外は予め完成させておく」という前提で話を進めてきました。ということは基本的にサイトはほぼ完成しているので、無理にMTでパーツのモジュール化を進めてもただ仕事を増やしているだけですよね。
MTタグを積極的に使用して様々な条件分岐を施して出力させている場合、その部分に関しては当然MTでモジュールする必要があります。個人的にはそれ以外の部分はPHPでモジュール化(言葉は適切ではないかも知れませんが)した方が好きです。

理由は簡単。MTでモジュール化すると再構築が必要で、個人的は「かったるい」んですよ(笑)

まぁ自分の作りやすい方法で良い結果が出せれば好きな方法で制作してください。あんまりMTに囚われ過ぎて制作がスムーズにいかなくなると困りますから。

カテゴリ-:

トラックバック(0)

トラックバックURL: http://www.soh-web.net/mt_5/mt-tb.cgi/175

コメントする

2011年6月

ウェブページ