Movable Type ヘルプ: テンプレート

一般的なブログ・サイトでは、メインページ、RSS、エントリーのページ、カテゴリー別にエントリーをまとめたページ、月別にまとめたページ、コメントの投稿前にプレビュー表示されるページなど、異なった性質のページが多数あり、それぞれの性質に応じて、表示される内容やレイアウトも変える必要があります。これらのファイルを、ファイルの種類ごとにどのようなデザイン・レイアウトで作るかを決定するのが、テンプレートです。

テンプレートでは、Movable Type独自のテンプレート・タグを埋め込むことによって、データをどのように表現するかを決定します。テンプレート・タグは、テンプレートの種類によって使い分ける必要があります。テンプレートの中身は、テキストデータです。通常はHTML(またはXHTML)で作成されますが、CSS、プレーンテキスト、SSI(サーバーサイド・インクルード)を含むHTML、XML、JavaScript、PHPなど、さまざまなファイル形式で作ることができます。

テンプレートの種類

Movable Typeのテンプレートは、大きく分けて4種類あります。

0301-01.jpg

インデックス・テンプレート

インデックス・テンプレートは、ブログ全体の内容に関わるファイルを扱うテンプレートです。典型的なブログでは、メインページ、RSS、スタイルシートなどが該当します。ここには新たなテンプレートを追加できます。

0301-02.jpg
[メインページ]
ブログのトップページを設定するテンプレートです。最新記事を何日分表示するか、どのような項目をどのような順番で表示するか、あるいはサイドバーに何を表示するかなど、自由に設定できます。
[スタイルシート]
ブログ全体に適用するスタイルシートです。通常の使い方は、この1つのスタイルシートにブログ全体のデザイン設定を盛り込むことになります。複数のスタイルシートを切り替えて使うためには、ほかのテンプレートにも設定が必要です。
[アーカイブページ]
これは、次節の「アーカイブ・テンプレート」と関係が深いので、そこで説明します。
[JavaScript]
ブログ全体で共通して使うJavaScriptです。投稿時のチェックなどに必要なJavaScriptを収めておくことができます。
[RSD]
「Really Simple Discoverability」の略で、外部のサービスがユーザーが作成したブログの情報を利用したいとき、必要な情報を自動的にツールが取得できるように提供しているファイルです。通常はここに手を加える必要はありません。
[Atom/RSS 2.0]
RSSもAtomも、サイトの要約情報を提供するファイルです。RSSリーダーなどを使ってサイトの更新情報を取得するのに使われています。通常はどちらも手を加える必要はありません。
[Dynamic Site Bootstrapper]
ダイナミック・パブリッシングをするときに必要なファイルです。詳細は別節を参照してください。

アーカイブ・テンプレート

Movable Typeでは、個々のエントリー(記事)を表示するためのファイルを、アーカイブ・ファイルと呼んでいます。ここには性質の異なるアーカイブ・テンプレートが3種類あります。

0301-03.jpg
[エントリー・アーカイブ]
個々のエントリーを表示させるページを設定します。多くのブログでは、エントリー1つ1つが記事を保存する最小単位となっており、このページのURLを固定することで外部から参照しやすくなっています。従って、これはトップページとなるインデックス・テンプレートと並んで重要なテンプレートといえます。
[日付アーカイブ(月別、週別、日別)]
ブログでは、「2006年03月」「2006年04月」というように、月別にエントリーをまとめ、過去のバックナンバーとして読めるように設定されていることが多く見られます。また、そのファイルはエントリーのタイトル・リンク・日付だけで、月別にまとめた過去記事への目次のように設定されていることもあります。このように、時間単位ごとにまとめたページを設定するのが、「日付アーカイブ」です。設定によって、月別・週別・日別の3種類を使い分けられます。複数の日付アーカイブを設定することも可能ですので、普通にまとめた過去記事ページと、カレンダー表示のみのページを作成することもできます。
[カテゴリー・アーカイブ]
日付ではなく、設定したカテゴリーごとにエントリーをまとめたページを設定するためのアーカイブです。この「カテゴリー・アーカイブ」をうまく設定すれば、テーマごとに分類した目次ページのように見せることも可能になります。

Movable Typeのテンプレート設定では、この3種類のアーカイブの特長を理解して使い分けることで、効果的なサイトを作り上げることができます。最小限のカスタマイズでは、インデックス、CSSとこの3種類のアーカイブ・テンプレートを調整してください。ここであげた「エントリー・アーカイブ」「日付アーカイブ」「カテゴリー・アーカイブ」は、それぞれエントリーを分類して表示するものです。すべての記事を一括して扱いたい場合には、インデックス・テンプレートの中にあるアーカイブページ・テンプレートを使うことになります。アーカイブページは、ブログ全体の内容を扱うので、このアーカイブ・テンプレートではなく、インデックス・テンプレートに分類されているのです。

システム・テンプレート

システム・テンプレートは、画像のポップアップ・ウィンドウやコメントのプレビューなど、特定の画面のデザインを設定するためのテンプレートです。

0301-04.jpg
[コメント・プレビュー]
コメントの投稿で、内容を確認したいときに表示します。
[コメント・保留]
投稿したコメントが、保留されたり、迷惑コメントと判断されたときに表示します。
[コメント・エラー]
コメントの投稿で、エラーが発生したときに表示します。
[画像のポップアップ・ウィンドウ]
画像をポップアップ・ウィンドウで表示するときのレイアウトです。
[コメントの一覧]
コメントの投稿で、ポップアップ・ウィンドウを使うように設定したときの表示レイアウトです。
[トラックバックの一覧]
特定のエントリーに送られたトラックバックの一覧を表示するときのレイアウトです。
[ダイナミックページ・エラー]
ダイナミック・ページの出力で、エラーが発生したときに表示します。

テンプレート・モジュール

共通のHTMLコードを、いくつかのテンプレートで使い回したいときは「テンプレート・モジュール」を使います。例えば、サイト全体のヘッダーやフッター、全体で共通して使いたい広告、アクセス解析用のタグなどがあります。これらコードはパーツをテンプレート・モジュールとして登録しておくことが可能です。

0301-05.jpg

例として、サイト全体で使うヘッダーを、テンプレート・モジュールとして登録してみましょう。

  1. [モジュールを新規作成]リンクをクリックして、[テンプレート名]を「Header」、[モジュールの内容]には「ヘッダーのHTMLコード」を貼り付け、[保存]します。
  2. このヘッダーを埋め込みたいほかのテンプレートモジュール内に、という以下のようにタグを埋め込みます。埋め込んだ箇所が先ほど登録した「Header」テンプレート・モジュールの内容と置き換わります。
    <$MTInclude module="Header"$>

MTIcludeにはテンプレート・モジュールだけではなく、外部のファイルを指定できます。


Copyright © 2001-2006 Six Apart, Ltd. All Rights Reserved.