≪HOME(21世紀のアフィリエイト通販生活)
よく使う部分をモジュール化 ~ MovableType
MovableTypeの出力ファイルをPHPにした(MovableTypeのPermalinkでのURL変更)のを契機に、各ページで共通利用できる部分をモジュール化する事に。
参考にしたのはCROSSBREEDさんのMTのPHP化とページ分割 です。
まず各インデックス、アーカイブ共に使い回せそうな部分はどこかと考えると、バナー、サイドメニュー、フッターです。これらをそれぞれモジュール化!と言ってもテンプレート・モジュール(MTInclude)を使うのではなく、インデックス・テンプレートで新たに出力ファイルを作成し、各ページで読み込ませます(PHPInclude)。こうする事で全体のファイルサイズを相当軽量化できます。
PHPモジュールを作る!
早速バナー部分をまるごと新たに作ったインデックス・テンプレートにカット&ペースト。ファイル名は適当で良いのですが、この時、"自動で再構築する"を切っておくのがポイント。モジュール単独でリビルドかけられる様になるので、記事を投稿する時の時間を短縮できます。これが一番のPHPメリットでしょうか。またモジュールファイルは一括りに同じフォルダに入れたいので、出力ファイル名はmodule/banner.phpとします。
読込み文を入れる!
メインページの該当箇所に以下のコードを挿入。
<? include("module/banner.php"); ?>
メイン以外にもアーカイブページに挿入する場合はパス名を調節します。こんな感じ、(あくまでうちの場合)
↓カテゴリページ <? include("../../module/banner.php"); ?>
↓個別&月別ページ
<? include("../../../module/banner.php"); ?>
以上の作業で、PHPモジュールファイルだけを編集&再構築する事が可能で、尚かつ編集結果が全ファイルに反映されます。後のファイルは再構築不要です。
外部ファイルをhtml にした場合は以下のコードを挿入します。
<$MTInclude file="module/banner.html"$>
似たような機能にテンプレート・モジュール(MTInclude module)がありますが、こちらは利便性はあってもファイル軽量化には殆ど役に立ちません。あくまでテンプレートタグの関係でPHPモジュールで対応できない場合のもしも用です。
↓追記)
実際にモジュール化してみて気付いたのですが、"自動で再構築する"を切っておくと確かに再構築時間は短縮できます。がしかし今度は最近の記事やカレンダー、最近のトラックバックなどが入っているサイドメニューなどをモジュール個別にリビルドしないといけません。そうしないと例えば新しい記事を書いてもサイドメニューに新記事がリストアップされません(悲)。要は更新させたい部分はチェックしときなさい、という事です。
投稿者 Locutus : 2005年01月01日 11:34 EDIT カテゴリ⇒ MovableTypeカスタマイズ
PHP化とサーバー負荷について '05 1/02
Dreamweaverでアップするとトラックバックがエラー! '05 1/02
本文もモジュール化!~ MovableType '05 1/01
→ よく使う部分をモジュール化 ~ MovableType '05 1/01
MovableTypeのPermalinkでのURL変更 '04 12/31
<textarea>内での改行について '04 12/31
エントリー投稿画面のリンクボタンでtarget="_blank"を自動的に挿入 '04 12/31
≪HOME
モジュール化 from MEMO
本当ならもっともっとすべきところはあるんだろうけど、とりあえずアフィリエイト部分... [続きを読む]
トラックバック時刻: 2005年09月28日 22:01
MovableTypeで再構築時間を早くする方法 from 臨機応変?
この正月休みでMovabletypeに色々なカスタマイズを加えました。特に個別... [続きを読む]
トラックバック時刻: 2007年01月06日 15:18
≪HOME(21世紀のアフィリエイト通販生活)