Movable Type ユーザマニュアル: テンプレート・タグ

« 目次


テンプレート・タグ

Movable Type のテンプレートは、標準テキスト、もしくはHTMLの標準的な構文の中に、特別なタグが埋め込まれることで構成されています。正確には、タグは「コンテナ」タグで、サブテンプレートと呼ばれるような、二つの異なるMTタグで囲まれたテキストとMTタグで構成されています。主には、コンテナ・タグはループか状態・条件(コンディション)を表しています。

コンテナでないタグは、単純な変数タグで、情報の動的な一部に置き換わります。

すべてのMovable Typeのタグは「 < 」と「 > 」で囲まれて、HTMLタグそっくりです。以下の例のように、記号の間に $ を入れることがあります。

<$MTEntryBody$>

これはHTMLタグとMovableTypeタグのどちらのタグなのか、素早く区別するためです。

Movable Typeタグには、アトリビューション(属性値)を設定できます。タグのアトリビューションはHTMLのタグのアトリビューションと同様の仕組みで、タグの中に name="value" と名前と値のペアのリストが半角空白を区切りにリストされます。たとえば

<MTEntries author="Foo" category="Bar">

このタグがどう働くのかは、 MTEntries の説明を見てください。 アトリビュートの値は 必ず " 」(ダブルクオーテーション)で囲んでください。さもないと、正しく動作しないことがあります。「 $ 」付きのMTタグでアトリビュートを使うときは、後ろの「 $ 」の前にアトリビューションをおいてください。以下に例を挙げます。

<$MTEntryDate format="%B %e, %Y"$>

いくつかのアトリニュートはグローバル、すなわちMovable Typeの変数置換タグすべてに利用できます。グローバル・アトリビュートについては、「グローバル・タグ・アトリビュート」で説明します。その他のアトリビュートは、タグそれぞれ違います。特定のタグでしか動作しません。これらのアトリビュートについては、それぞれのタグの説明のなかで紹介します。

いくつかのMTタグでは、利用する場所が限定されます。たとえば、 MTComments コメント・ポップアップ テンプレート、もしくは Individual エントリー・アーカイブなどエントリーの中でのみ利用できます。

ブログ・データ

エントリーリスト/アーカイブ・ページ

コメント

コメントのプレビュー

コメントを投稿する前に確認するとき使われる Comment Preview Template を作成するときに、以下のタグを使うことができます。これのタグは、 コメント で説明した似た名前のタグと同じ機能を持っています。以下のタグは、確認のときにしか使えない、ということだけが違います。

アーカイブ・テンプレートとマスター・アーカイブ・インデックス

以下のテンプレート・タグと変数は、アーカイブ・ページとマスター・アーカイブ・インデックスに利用します。

カテゴリー関連のタグ

以下のタグは、カテゴリーのリストと、それぞれのカテゴリーに関連する情報(ID, ラベル、その他)を表示するために使います。

カテゴリーの階層構造はテンプレートにも反映できます。 通常、テンプレート・デザイナーは、カテゴリーの表示において、1つのカテゴリのデザインを表すテンプレートのタグを1つのブロックにして作成します。そしてその1ブロックを、MTEntriesやMTCommentsなどのタグのように繰り返します。 各カテゴリーの子カテゴリーを表示するには、<MTSubCatsRecurse>タグを、子カテゴリーのリストが表示される位置に挿入し、 そのブロックに指定されたものと同じフォーマットを使うようにします。

<MTSubCategories>...</MTSubCategories>のタグに挟まれたテンプレート・コードのブロックに、<MTSubCatsRecurse>が含まれている場合、そのブロックは現在のカテゴリーの子カテゴリーの一つ一つに繰り返されます(たとえば、前述にあるように「エンターテインメント」が現在のカテゴリーである場合、<MTSubCatsRecurse>がテンプレート・タグのブロックを通して、「本」と「音楽」を実行します)。

望む結果を得るためには、通常、条件ブロック・タグの<MTSubCatIsFirst>と<MTSubCatIsLast>を使って、「現在」のカテゴリーが、兄弟カテゴリーの中で、最初にリストされるか最後にリストされるかを決める必要があります。 この作業は通常、階層リストを作成する上で、正しいHTMLタグを生成するのに必要です。

たとえば、以下では、番号付きでないネストされたリストが生成されカテゴリーの階層を表示します。

<MTSubCategories>
<MTSubCatIsFirst><ul></MTSubCatIsFirst>
<li>
<MTCategoryLabel>
<MTSubCatsRecurse>
</li>
<MTSubCatIsLast></ul></MTSubCatIsLast>
</MTSubCategories>

各タグについての詳細は、下記を参照してください。

カレンダー表示タグ

以下のタグは、エントリーをカレンダー表示にして出力するために使います。Movable Typeのカレンダー出力は HTML のテーブルに限らず、他のさまざまなカレンダーを作るために十分な機能があります。

次の例は、標準的なカレンダーを表示します。今月分を表示します。

<table border="0" cellspacing="4" cellpadding="0" summary="Monthly calendar">
<caption><$MTDate format="%B %Y"$></caption>
<tr>
<th abbr="Sunday" align="center">Sun</th>
<th abbr="Monday" align="center">Mon</th>
<th abbr="Tuesday" align="center">Tue</th>
<th abbr="Wednesday" align="center">Wed</th>
<th abbr="Thursday" align="center">Thu</th>
<th abbr="Friday" align="center">Fri</th>
<th abbr="Saturday" align="center">Sat</th>
</tr>
<MTCalendar>
<MTCalendarWeekHeader><tr></MTCalendarWeekHeader>
<td <MTCalendarIfToday> bgcolor="#EEEEEE" </MTCalendarIfToday> align="center">
<MTCalendarIfEntries><MTEntries lastn="1"><a href="<$MTEntryLink$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries>
<MTCalendarIfNoEntries><$MTCalendarDay$></MTCalendarIfNoEntries>
<MTCalendarIfBlank>&nbsp;</MTCalendarIfBlank></td>
<MTCalendarWeekFooter></tr></MTCalendarWeekFooter>
</MTCalendar>
</table>

注意:カレンダーの表示は、サーバに比較的大きな負荷が加わります。複数のページに同じカレンダーを表示したいときには、そのカレンダーを Index テンレートとして作り、SSI (サーバ・サイド・インクルード) もしくは PHP や他の手段で、それぞれのページに読みこませるようにするといいでしょう。

トラックバック・タグ

以下は、トラックバック に関連するタグです。

検索結果タグ

以下のタグは、サーチ・テンプレートでのみ利用可能です。

その他のタグ

上記のどの分類にも、まったく当てはまらないタグがいくつかあります。

グローバル・タグ・アトリビュート

グローバル・タグ・アトリビュートはどの変数置換タグ(値に置き換えられるタグ、他のタグに指示を与えるために「囲む」コンテナ・タグとは異なります)に対しても使えます。しかし、どのタグで使っても、それがいい考えであるわけではありません。特定のタグでしか使えないアトリビュートを使うときの考え方と同様です。グローバル・アトリビュートは、それぞれのタグ専用のアトリビュートと同じように name="value" と、たとえば次のように使います。

<$MTEntryExcerpt encode_html="1"$>

HTMLエントコードされた概要を表示します。

以下はグローバル・タグ・アトリビュートの一覧です。

日付タグのフォーマット

Movable Type は標準的な strftime の形式の文字列を日付と時刻を表示するために使います。(実際には strftime それ自体を使っているわけではありません。) どの日付タグでも、 format アトリビュートを使って、表示文字列のフォーマットを設定することができます。次のようにします。

<$MTDate format="%B %e, %Y %I:%M %p"$>

この例は、実際に使われている英語のデフォルト・フォーマットで、次のように表示されます。

September 20, 2001 11:44 PM

曜日、月、AM/PM は言語によって設定が変ります。ブログの設定で、 日付の表示のための言語 を選択します。デフォルトの言語は English です。

(訳注: ユーザプロファイルの設定での言語の設定とは異なります)

アトリビュート language を使うと、設定を変更することができます。特定の部分だけの設定を変更することができます。設定できる言語は以下の通りです。 cz , dk , nl , en , fr , de , is , jp , it , no , pl , pt , si , es , fi , se

以下は、フォーマットの設定の一覧です。

注意: Movable Type 2.0 以降は、 %Z をサポートしません。タイムゾーンが必要なときは、 <$MTBlogTimezone$> タグを利用してください。


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