xserver~自宅サーバー構築、Movable Typeのカスタマイズ、Linux、ブログなどについて解説していきます~

サイトロゴ
HOME > Movable Type > カスタマイズ > 第23回:テンプレート...
Movable Type
RSS Atom

Movable Type のカスタマイズ関連について扱っていきます。

第23回:テンプレートをモジュール化する

第22回では、長くなったページを分割する方法について説明しました。今回は、複数のページで何度も繰り返して使用するヘッダーやフッター、サイドバーなどのパーツをモジュール化し、そのモジュールを各テンプレートから読みこませて利用する方法について説明していきます。このように各パーツをモジュール化することで、テンプレートを管理する手間を軽減させ、再構築時間を短縮させることができるようになります。

まず、自分のサイト内をざっと見渡して、モジュール化できる部分を探してみましょう。

筆者のサイトで考えてみると、ヘッダーとフッターがモジュール化できる部分にあたり、全てのページで共通した部分になっています。このヘッダーとフッターをモジュールとして作成し、各テンプレートから読み込ませれば、今まで1エントリーごとに再構築させていたヘッダーとフッター部分のソースを出力する必要がなくなるので、必然的に再構築時間は短くなります。

そこで、このヘッダーとフッターをどうやって読み込ませるかですが、方法は2通りあります。ひとつは、Movable Type標準タグのMTIncludeタグを用いてモジュールを読み込む方法。もうひとつは、PHP を使ってファイルをインクルードする方法です。


■MTIncludeでテンプレートモジュールを読み込む方法

MTIncludeタグでテンプレートモジュールを読み込むには、予め、モジュールを新規に作成しておきます。「テンプレート」→「モジュール」→「モジュールを新規作成」から新規モジュールを作成してください(以下図参照)。この時に指定する「テンプレート名」が、MTIncludeタグのmodule 属性で指定するモジュールの名前と同じになります。「モジュールの内容」には、ヘッダーとして表示させたいHTMLソースを挿入してください。

モジュールを新規作成


次に、ヘッダーを読み込ませたいテンプレートに以下の1行を貼り付けます。たったこの1行を記述するだけで、そのテンプレート内にヘッダーが読み込まれるようになります。必要とあらば、全てのテンプレートに以下の1行を挿入します。なお、ヘッダーを修正する場合は、このheader モジュールを修正するだけで全てのページが置き換わるので、管理が非常に楽になります。

<$MTInclude module="header"$>

上記では、headerをモジュール化した後、MTIncludeタグでそれを読み込ませるようにしましたが、テンプレートモジュールを読み込むのと同じように、外部ファイルを読み込む事もできます。その場合、module 属性ではなく、file 属性を用います。但し、file 属性で外部ファイルを読み込む場合は、そのファイル内でMTタグを使用する事ができませんので注意してください。

<$MTInclude file="header.php"$>


■PHPでファイルをインクルードする方法

MTIncludeタグに頼らずに、PHPを使ってファイルをインクルードする方法もあります。この方法での最大の利点は、わざわざMovable Typeの管理画面を開かずとも、普段使い慣れたホームページ作成ソフトや専用テキストエディタなどでちゃちゃっと素早く更新できる点です。勿論、直接ファイルを編集するだけなので再構築は一切不要です。例えば、サイドバーに広告を表示させるような場合には、PHPでインクルードさせた方が更新の手間がかからないので、より好ましいと言えるでしょう。

実際に、外部ファイルを読み込むには、requireinclude関数を用います。両者は、エラー処理を除いてほぼ同じ意味になります。なお、PHPで外部ファイルを読み込ませる場合も、そのファイル内(ここでは、header.php)にMTタグを記述することができませんので注意してください。また、外部ファイルを読み込ませる場合には、インクルードさせるファイルの文字コードをMovable Typeの文字コードに合わせておきましょう。そうでないと、文字化けの原因となります。

<?php require("<$MTBlogURL$>header.php")?>
<?php include("<$MTBlogURL$>header.php")?>

今回は、ヘッダーファイルを読み込ませる方法について説明しましたが、ご自分のサイトをよく眺めながらモジュール化できる部分は可能な限りモジュール化してしまいましょう。例えば、「最近のコメント」や「最近のトラックバック」「月別アーカイブ」など、モジュール化できる部分は意外とたくさんあります。但し、あまりに細かくモジュール化しすぎると、返って管理が複雑になり本末転倒となってしまうので、わかりやすい程度にほどほどにしておくのがBESTだと思います。

以上、第23回は終了です。

参考になりましたらポチっとお願いします♪

トラックバック

このエントリーのトラックバックURL:


コメントを投稿

ブログをやるなら
ブログランキング

スポンサードリンク
私が読んだ書籍
ブログ簡単パワーアップ Movable Type スーパーカスタマイズテクニック
カスタマイズ中心の書籍。すでにMTを触っている方にオススメ。どこからでも気軽に読めるのがGOODです。MT本の中でも特にお勧めの一冊。

Movable Type標準ハンドブック Movable Typeで今すぐできるウェブログ入門 改訂版
標準ハンドブックの名に相応しいMT入門本。インストールから基本設定、簡易なカスタマイズまで網羅。白黒ですが、デザインがすっきりしていて読み易いです。

Movable Typeでつくる!最強のブログサイト
入門編から基本設定、3カラムデザインへの変更、スタイルシートの説明、カスタマイズ応用編など広い範囲で網羅しています。370p とボリューム感も。

Movable Typeスタイル&コンテンツデザインガイド―コンテンツ管理システム(CMS)ツールとしてのMovable Type活用術&実践サイトデザイン術
MTをCMSツールとして活用するための仕組みや特徴を解説。前半のタグリファレンスは便利。後半のデザイン例は、オリジナルなデザインが作れる方なら不要です。初心者にはやや不向き。