≪HOME(21世紀のアフィリエイト通販生活)
本文もモジュール化!~ MovableType
MovableTypeの出力ファイルをPHPしたのはつい昨日の事ですが、参考にさせて頂いたサイトさんの多くで必ず話題にされてるのが、本文(MTEntryBody)部分のモジュール化です。
確かにエントリー部分はメインページもアーカイブも同じものを利用しています。各ページで共通した部分は外部ファイルとしてモジュール化する事で、ファイルサイズも小さくなるし、再構築時間も短縮できる筈です。今はまだMovableTypeを始めたばかりなので気にする程ではありませんが、最初にちゃんとしとかないと後から困ってしまうのが世の常、さっそく取り掛かることに。
ちなみに今回参考にしたのはこちらです。
└ リビルドなんて怖くない
└ あなたのmovabletype、重たくないですか?
新しいアーカイブ・テンプレートを作る
「新しいアーカイブ・テンプレートを作る」から、エントリー本文用のテンプレートを作成します。名前は適当に(うちはEntryBody)つけます。テンプレートの中身には、
<$MTEntryBody$>
とだけ記述します。
※「追記」を多用する人はMTEntryMore用のテンプレートも用意します。追記用の説明はこれ以降省きます。
個別アーカイブに追加
新たに作ったアーカイブテンプレート(EntryBody)を個別アーカイブに追加します。アーカイブの設定 - 「新しく、テンプレートとアーカイブを関連付ける」から以下の設定で追加!
アーカイブの種類 : 個別
テンプレート : EntryBody
出力ファイル名を設定
EntryBodyが個別アーカイブとして書き出すファイル名を指定します。
私の場合はこんな感じです。
<$MTArchiveDate format="%Y/body/%m%d-%H%M_body"$>.php
ここで設定するEntryBodyは何をするかと言いますと、メインページや各アーカイブページが共通で読みに行くファイルを作成する事になります。
読込み文を入れる!
メイン、アーカイブの各ファイルに読み込みコードを挿入します。うちのサーバーでは以下のように設定しました。
メイン
<?php include("archives/<$MTArchiveDate format="%Y/body/%m%d-%H%M_body"$>.php"); ?>個別
<?php include("../../../archives/<$MTArchiveDate format="%Y/body/%m%d-%H%M_body"$>.php"); ?>日付け
<?php include("../../../archives/<$MTArchiveDate format="%Y/body/%m%d-%H%M_body"$>.php"); ?>カテゴリ
<?php include("../../archives/<$MTArchiveDate format="%Y/body/%m%d-%H%M_body"$>.php"); ?>
再構築すれば完了です。
どうなんでしょ?
これで全ページで同じ<$MTEntryBody$>を読み込んで共通利用する事になりました。しかしだからどうした的な感じがします。たしかにファイルサイズは少し小さくなった気がしますが、うちみたいにサーバー容量が1G以上もあると、メリットは感じません。それでもリビルド時間が短縮できるなら意味があるんですが、今の所は特に変わらず。将来的に劇的な変化があるんでしょうか?
それより新たに個別アーカイブ(EntryBody)を追加した事により、出力ファイル数がエントリー分だけ増えてしまうのはどうなんでしょ。暫く使ってみてメリットがなければ元に戻す事にします。
投稿者 Locutus : 2005年01月01日 22:19 EDIT カテゴリ⇒ MovableTypeカスタマイズ
rssfeedを使ってニュースのヘッドラインを表示 '05 1/07
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
≪HOME
≪HOME(21世紀のアフィリエイト通販生活)