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 エントリー・アーカイブなどエントリーの中でのみ利用できます。
システム全体のすべてのブログのリストなどを表示するときに使うコンテナ・タグです。アクセス権(テンプレートの編集、もしくはリビルトについて)のあるすべてのブログが対象になります。このコンテナ・タグの内側では、 <$MTBlog*$> タグを利用できます。
ブログの数字のID
ブログの名前。ブログの設定画面で指定できます。
ブログの説明。ブログの設定画面で指定できます。
ブログの絶対URL(完全なURL)。ブログの設定画面に項目があります。
ブログの Archive URL 。ブログの設定画面に項目があります。
ブログの相対URL。ブログの設定画面に指定された Site URL からの相対アドレスです。この設定は、ウェブサイトのステージング・バージョンを用意するとき、URLをハードコードしなくてよくて便利です。
ブログの Local Site Path 。ブログの設定画面に項目があります。
ブログの絶対URLのホスト名部分。たとえば、 Site URL (ブログの設定画面)が、 http://www.example.com/blog/ ならば、 www.example.com になります。
ブログのタイムゾーン。UTCからの時差が +|-hh:mm のような形式で表示されます。たとえば、タイムゾーンがUTCより 4 進んでいるときは、 +04:00 と表示されるでしょう。
ブログのエントリー数。
ブログのコメント数。
選んだクリエイティブ・コモンズ・ライセンスに合わせた内容が書かれているURL。
選んだクリエイティブ・コモンズ・ライセンスに合った、機械判別可能なRDFの出力。このタグは使われる場面によって異なる動作をします。エントリーに適用されたときには、RDFに、そのエントリーについての情報が追加して含まれます。そうでなければ、一般のブログの情報に基づきます。
このコンテナ・タグは、クリエイティブ・コモンズ・ライセンスがブログの設定の中で選択されているときに、中身を実行します。選択されていないときは、中身は無視されます。
ブログのエントリー/投稿のリストのためのコンテナ・タグです。アトリビュートを使って、どのエントリーを表示するか設定することもできます。そのまま使うと、最近 N 日間に投稿されたエントリーが表示されます。この N 日は、ブログの設定で、それぞれのブログごとに設定することができます。変更するには、以下のアトリビュートを使ってください。
ブログに投稿された最新の N 個のエントリーを表示します。 N は0より大きい数字にしてください。
上の lastn を使うときに、最新の M 個のエントリーを除外して、そこから、 N 個のエントリーを表示します。たとえば、
<MTEntries lastn="5" offset="5"> ... </MTEntries>
と書いた場合、6番目から10番目の、5個のエントリーが表示されます。
注意: このタグは lastn と一緒に使います
指定したカテゴリー category name のすべてのエントリーを表示します。カテゴリーに多数のエントリーがあるときには、大きなページになってしまう可能性がありますので、注意してください。 lastn を使って、決まった数のエントリーだけを表示するようにしたほうがいいかもしれません。
複数のカテゴリーのエントリーを一緒に表示したいとき、もしくは、複数のカテゴリーを設定したエントリーに限定したちとき、 category name に AND や OR を使います。同時にはどちらか一方しか使えません。たとえば Foo AND Bar OR Baz は動きません。 Foo AND Bar AND ... もしくは Foo OR Bar OR ... であれば、動きます。
たとえば、 Foo と Bar の両方のカテゴリーを設定されているエントリーをすべて表示したいときには、次のように指定します。
<MTEntries category="Foo AND Bar"> ... </MTEntries>
特定の著者 author name による投稿をすべて表示します。たくさんのエントリーが表示さされてしまう可能性があります。そのような場合、 lastn を使って、表示するエントリー数を制限することができます。
N 日以内のエントリーをすべて表示します。
最近コメントがついた N 個のエントリーを表示します。それぞれのエントリーは一度しか表示されません。たとえば、エントリーAにコメントが付き、そしてエントリーBにコメントが、そして別のコメントがエントリーAに付いたとき、二つのエントリーとして、エントリーA、次にエントリーBの順で表示されます。
<MTEntries> タグによって表示されるエントリーを並べ換える順序を指定します。ブログの設定で指定した、標準の並び換え順を上書きします。 ascend と descend を指定できます。
ascend と descend は単に時間順だけでなく、 sort_by アトリビュート(下で説明します)と一緒に使われてときには、アルファベットで A から Z ( ascend ) もしくは Z から A ( descend ) になります。
標準では descend になります。
エントリーの作成日以外を基に並べ換えを行うフィールドを指定します。 field name で指定できるのは、 title 、 status 、 modified_on 、 author_id 、または excerpt です。
このアトリビュートのもっともわかりやすい使い道は、日付順のエントリーをアルファベット順に並べることかもしれません。たとえば、辞書サイトをMovable Typeを使って表示することを想像してみましょう。エントリーを文字ごとにグループ化したいと思い、AからZまでの26のカテゴリーを作ることでしょう。辞書に含まれるすべてのエントリーを、文字ごとにまとめ、アルファベット順に並べたリストを作るためには(あらかじめ、それぞれのエントリーのタイトルには、その単語か言葉を入力しておく必要がありますが)、次のようにします。
<MTCategories> <$MTCategoryLabel$><br /> <MTEntries sort_by="title" sort_order="descend"> <a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a><br /> </MTEntries><br /> </MTCategories>
注意: lastn 、 category 、 author を組み合わせて、エントリーのリストをフィルタできます。( days は、単独で使ってください。他のアトリビュートと一緒に使うと無視されます。) たとえば、 lastn と category を MTEntries に使うと、特定のカテゴリーの最新エントリーが N 個表示されます。さに著者名でフィルタしたいときには、 lastn と category に加えて author の3つのアトリビュートを使います。
<MTEntries category="Fun" author="Me" lastn="10"> ... </MTEntries>
これは、カテゴリーが Fun で著者が Me のエントリーから最新のエントリーを10個表示します。
エントリーのタイトル。
エントリーの Post Status(投稿の状態)。 draft か publish のどちらかになります。このタグは使い道がありません。大抵のブログでは、 publish のエントリーだけを表示します。このタグは Export 機能を利用するときに、Movable Type 内部で利用されています。
エントリーの概要(Excerpt)。もし、概要に記述がないときは、エントリーの最初の20ワードに、省略を表わす ... をつけて、代わりに使います。
概要に記述するときは、改行と段落分けが自動的に行われないことに注意しましょう。次のように、アトリビュート convert_breaks を利用する必要があります。
Excerpt with line breaks converted: <$MTEntryExcerpt convert_breaks="1"$>
エントリーの本文。自動的に改行と段落分けしてほしいときには、エントリーの設定で、テキストフォーマットに Convert line breaks を選びます。段落--連続する二つの改行--は、<p> と </p> の囲みに変換され、残る単独の改行には <br /> が追加されます。
エントリーごとの Text Formatting の設定は、 convert_breaks をアトリビュートに指定することで上書きすることができます。このアトリビュートが指定されていれるときは、常にエントリーの設定は上書きされます。たとえば、普段は設定を有効にしていたが、特定の場面で改行を無効にしたいときは、以下のようにします。
<$MTEntryBody convert_breaks="0"$>
エントリー本文の最初の N 語だけを表示したいときには、アトリビュートの word を使いましょう。たとえば、エントリー本文の最初の 5 語だけをみせたいときには、次のようにします。
<$MTEntryBody words="5"$>
最初の N 語を取り出すために、ます HTMLタグを取り除き、それから空白で分割しています。
エントリーの追記(extended)のテキスト。続きを読む...の部分です。自動的に改行と段落分けしてほしいときには、エントリーの設定で、テキストフォーマットに Convert line breaks を選びます。段落--連続する二つの改行--は、<p> と </p> の囲みに変換され、残る単独の改行には <bt /> が追加されます。
エントリーごとの Text Formatting の設定は、 convert_breaks をアトリビュートに指定することで上書きすることができます。このアトリビュートが指定されていれるときは、常にエントリーの設定は上書きされます。たとえば、普段は設定を有効にしていたが、特定の場面で改行を無効にしたいときは、以下のようにします。
<$MTEntryMore convert_breaks="0"$>
エントリーを含むアーカイブページへの絶対 URL。もし、複数のアーカイブの種類を選んでいたときには、ブログの設定にある、 優先するアーカイブの種類 (Preferred Archive Type) によって決まります。これはデフォルトの場合で、特定のアーカイブのリンクを必要とするときには、アトリビュート archive_type を指定して上書きすることができます。
たとえば、 Preferred Archive Type として Individual を設定していたとき、次のタグ
<$MTEntryLink$>
はエントリー (Individual Entry) のアーカイブ・ページへのリンクになります。ファイル名は標準では、6桁の数字で表わされるエントリーIDに、ブログの設定にある アーカイブファイルの拡張子(Archive File Extension) を付けたもの (たとえば、 html ) になります。もし、 カテゴリー (by Category) のアーカイブを有効にして、特定のエントリーへのリンクを、そのカテゴリー・アーカイブにしたいときには、次のようにします。
<$MTEntryLink archive_type="Category"$>
このタグは、このエントリーのカテゴリー・アーカイブ・ページへのリンクになります。 本当のパーマリンク(変化しないリンク)--もし、他のエントリーと一緒に一つのページにそのエントリーが入っていたとしても、その特定のエントリーへのリンクを指し示めすリンク--を利用したいのであれれば、 <$MTEntryPermalink$> タグを使ってください。
エントリーを含むアーカイブページへの絶対 URL。 その特定のエントリーを指すためのアンカー ( # ) が付いてきます。これは、 <$MTEntryLink$> と同じですが、エントリーへのリンクでは重複してしまうのですが、個別のアーカイブ以外ではアンカーを含む分、正確にエントリーを指し示します。 <$MTEntryLink$> タグと同様に、追加のアトリビュートとして archive_type を設定し、特定のアーカイブの種類へのリンクにすることができます。
エントリーの編集画面のキーワードフィールドの値
エントリーの著作者(author)の名前。
エントリーの著作者(author)のニックネーム。
エントリーの著作者のメールアドレス。
アトリビュート spam_protect を設定すると、スパムボット(スパム用にアドレスを収集しているプログラム)対策にアドレスを変換します。変換後も、ウェブブラウザには、メールアドレスとして表示されます。たとえば、メールアドレスが foo@bar.com であれば、次のように設定します。
<$MTEntryAuthorEmail spam_protect="1"$>
すると foo@bar.com と出力されます。
エントリーの著作者(author)のウェブサイトのURL。
著作者(author)の名前のリンク付きバージョン。リンクの付き方のルールは次のとおりです。著作者が URL を入力していれば、名前はその URL へのリンクになります。次にメールアドレスがあれば、名前は、そのメールアドレスへのリンクになります。もし、URL もメールアドレスも両方設定されていなければ、リンクなしに名前を表示します。このルールは、アトリビュート show_email や show_url を指定すれば、変更できます。たとえば
<$MTEntryAuthorLink show_email="0"$>
とすれば、メールアドレスは表示されることはありません。すなわち、URL が入力されていれば、その URL へのリンク、URL が入力されていなければ、リンクなしに表示され、メールアドレスは表示されません。
アトリビュート spam_protect を設定すると、スパムボット(スパム用にアドレスを収集しているプログラム)対策にアドレスを変換します。変換後も、ウェブブラウザには、メールアドレスとして表示されます。たとえば、メールアドレスが foo@bar.com であれば、次のように設定します。
<$MTEntryAuthorLink spam_protect="1"$>
すると foo@bar.com と出力されます。
エントリーの日付。全ての日付関連のタグと同様、このタグにも format と language をアトリビュートとして設定できます。詳しくは 日付タグのフォーマット を見てください。
エントリーに付いたコメントの数。
エントリーに付いたトラックバックの数
エントリーに対してのトラックバック用データの RDF 出力。Bookmarklet が利用します。この出力はブラウザで見えないようになっています。
エントリーが Pingを受けつける(Allow Pings) 設定になっているとき、このエントリーに Ping を送ってもらうためのトラックバック URL。
エントリーに対応したトラックバック項目のIDナンバー。 Ping を受けつける(Allow Ping) が設定されていれば、必要であれば、別の Trackback URL を作るために利用できます。
エントリーに追記(extended)のテキストがあれば、コンテナのん内容を表示するタグ。Index のテンプレートで追記があるときに、「続きを読む...」とリンクを表示するときに便利です。次のように使います。
<MTEntryIfExtended> <a href="<$MTEntryLink$>#<$MTEntryID$>">More...</a> </MTEntryIfExtended>
エントリーがコメントを受けつける設定のときに表示されるコンテナ・タグ。これは、エントリーの編集画面で、コメントの設定が Open もしくは Closed の場合に表示されます。コメントが許可されているときだけ、コメントへのリンクを表示するときに使います。
Movable Type のマニュアルの Comments コメントの部分に、このタグが使われていますので、参考にしてください。
エントリーの「 コメントを受けつける 」の設定が Open のときに内容が表示されるコンテナ・タグ。「コメントを投稿する」ためのHTMLフォームを表示するときなどに使います。
エントリーがトラックバックを受けつける設定になっているときに、内容を表示するコンテナ・タグ。トラックバックの設定は、エントリーの編集画面で行います。マニュアルのトラックバックの章で、このタグの使った例があります。
数字で表されるエントリーID。Permalinkへのアンカーを作るときに使います。標準では、左詰めの 0 はありません。いいかえると、エントリーIDが 8 であれば、このタグの値は 8 になります。必要なら、アトリビュートの pad を使ってこのタグを次のように書いてください。
<$MTEntryID pad="1"$>
エントリーは6桁の数字として表示され、足らないときは、 000008 のように 0 が左詰めで追加されます。
エントリーの主(プライマリー)カテゴリーの名前。プルダウン・メニューで選んだカテゴリーの名前を表示します。
エントリーのカテゴリーリストのコンテナ・タグ。リストには、メイン・カテゴリーも含みます。このコンテナ・タグの内側では、 <$MTCategory*$> タグを使えます。(それぞれのタグについては、カテゴリー・タグ を参照してください。)
アトリビュート glue を使うと、カテゴリーの区切り文字を設定できます。コンマ区切りしたいときに便利です。 glue には「'(シングル・クオーテーション)」や「"(ダブル・クオーテーション)」は使えません。
サンプル
このエントリーは、次のカテゴリーに投稿されました: <MTEntryCategories glue=", "> <a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a> </MTEntryCategories>
エントリーについて、いくつかの二値フラグのうちの一つを表示するためのタグ。現在使えるフラグは、 convert_breaks と allow_comments の二つです。値が正の(設定されている)ときには、タグの値は 1 に、さもなくば 0 として表示されます。フラグの名前は、アトリビュート flag に設定します。次に例を挙げます。
<$MTEntryFlag flag="allow_comments"$>
このタグは、データをエキスポートするときにシステムで利用します。普段、テンプレートの中で使うことはないでしょう。
現在のエントリーの前のエントリーの中身を表示させるためのコンテナ・タグ。 MTEntryPrevious の中では、たとえば、<$MTEntryTitle$> タグは、前のエントリーのタイトルを表示します。</MTEntryPrevious> でコンテナ・タグを閉じたら、現在のエントリーについての表示に戻ります。
例は後述の MTEntryNext を参照してください。
現在のエントリーの次のエントリーの内容を表示させるためのコンテナ・タグ。 MTEntryNext の中では、たとえば、<$MTEntryTitle$> タグは、次のエントリーのタイトルを表示します。</MTEntryNext>でコンテナ・タグを閉じたら、現在のエントリーについての表示に戻ります。
以下は、前のエントリーと次のエントリーへのリンクによるナビゲーションの例です。
<MTEntryPrevious> <a href="<$MTEntryLink$>"><< <$MTEntryTitle$></a> | </MTEntryPrevious> <a href="<$MTBlogURL$>">Main</a> <MTEntryNext> | <a href="<$MTEntryLink$>"><$MTEntryTitle$> >></a> </MTEntryNext>
エントリーのリストの中で、エントリーが前のエントリーと比較して、新しい日付になったときだけ、内容を表示するコンテナ・タグ。 MTEntries コンテナ・タグの中でのみ有効です。次のように使います。
<MTEntries> <MTDateHeader> <$MTEntryDate format="%B %e, %Y"$> </MTDateHeader> タイトル: <$MTEntryTitle$> </MTEntries>
エントリーが次に投稿されたエントリーと比較して異なる日付であったときだけに内容が表示されるコンテナ・タグ。前述の MTDateHeader タグと一緒に使って、 div などで、その日の複数のエントリーを構造化するときに使います。 MTDateHeader と同様に、このタグも MTEntries の内側でのみ有効です。例は以下のとおりです。
<MTEntries> <MTDateHeader> <div class="day"> <$MTEntryDate format="%B %e, %Y"$> </MTDateHeader> Title: <$MTEntryTitle$> <MTDateFooter> </div> </MTDateFooter> </MTEntries>
<MTEntries> コンテナの内側で最初のエントリーのときだけ内容を表示するコンテナ・タグです。
<MTEntries> コンテナの内側で最後のエントリーのときだけ内容を表示するコンテナ・タグです。 トップページから、アーカイブ・ページへのリンクを予告と一緒に作るときに使うことができます。次の例は Daily Archive を使っていっています。
<MTEntries days="1"> ... <MTEntriesFooter> <MTEntryPrevious> <a href="<$MTEntryLink archive_type="Daily"$>">Previously: <$MTEntryDate format="%A, %B %d, %Y"$></a> </MTEntryPrevious> </MTEntriesFooter> </MTEntries>
特定のブログ、もしくは特定のエントリーについてのコメントのリストを表示するためのコンテナ・タグ。後述するように、 lastn アトリビュートの存在に依存します。
このタグを lastn="N" アトリビュートと一緒に利用すると、 N に表示したいコメントの数を設定すれば、そのエントリー(もしくは、そのブログ)の最新の N 個のコメントを表示します。
アトリビュートを指定しないときは、 <MTComments> はその特定のエントリーのコメントをすべてリストにします。その場合、エントリーの中で、すなわち、 <MTEntries> の内側、もしくは Individual entry archive template 、 Comment Preview template 、 Comment Listing template 、 Comment Error template の中で使わないといけません。 デフォルトでは、コメントはブログの設定にある コメントの表示順 の設定のとおりに並べ換えられます。これは sort_order アトリビュートを設定して変更することができます。値としては、 ascend (昇順)もしくは、 desend (降順)を設定します。
特定のブログ全体への最新の6個のコメントを、新しいものから並べて表示するには、以下の例を Index テンプレートに記述します。
<MTComments lastn="6" sort_order="descend"> <p><$MTCommentAuthor$> said:<br /> <$MTCommentBody$></p> </MTComments>
それぞれのコメントについて、コンテナの内側でテキストとタグが表示されます。以下で説明するタグは、コメントについての様々な値を表示します。
コメントID。数字で表示されます。特定のコメントへ直接リンクするためのアンカーを設定するときに使います。デフォルトでは、コメントIDは左詰めの 0 は付きません。いいかえると、コメントIDが 8 のとき、このタグの値は単なる 8 になります。左詰めの 0 を付けたいときには、 pad アトリビュートを設定します。
<$MTCommentID pad="1"$>
すると、 000008 のように 0 が左詰めされた 6 桁のコメントIDが表示されます。
コメントが付けられた元のエントリーの ID。 <MTComments lastn="N"> タグと一緒に、エントリーへのリンクを作るために使います。このタグも、 <$MTCommentID$> と同様に pad アトリビュートを使うことができます。
コメントを書き込んだホストの IP アドレス。
コメントの著者の名前。以下のように、オプションでdefaultという引数を取ります。
<MTCommentAuthor default="Anonymous">
著者名がない場合は、defaultに指定した名前が使われます。
リンク付きの著者の名前。次のルールでリンクを生成します。まず、URL が記述されていれば名前が URL へのリンクになります。メールアドレスが入力されていたら、メールアドレスへのリンクになります。両方とも入力さていないときは、リンクなしで名前を表示します。
show_email と show_url アトリビュートを設定して、このルールを変更することができます。たとえば
<$MTCommentAuthorLink show_email="0"$>
とすると、メールアドレスは表示されせん。このときのルールは、URL 入力さていれば、名前がその URL へのリンクとして、入力されていないときには、リンクなしで名前が表示されます。
このようにすると、サイトの読者にメールアドレスを残すようにお願いしやすくなります。特に、ブログの設定で、 特定のコメントを許可する にチェックしていないが、このメールアドレスを表示する気はないときに使います。
spam_protect アトリビュートを設定すれば、メールアドレスへのリンクは表示されますが、スパム・ボット対策されたアドレスに変更されます。ウェブ・ブラウザでは、正しいメールアドレスとして表示されます。たとえば、以下の例
<$MTCommentAuthorLink spam_protect="1"$>
では、メールアドレスが foo@bar.com のとき、タグの値は foo@bar.com となります。
デフォルトでMTCommentAuthorLinkはリダイレクト機能を使い、コメント投稿者のURLを検索エンジンから見えないようにします。 この機能により、検索エンジンでのランクを上げるためのコメント・スパムを抑制できる可能性があります。 このリダイレクト機能を使わない場合は、属性 no_redirect を指定できます。
<$MTCommentAuthorLink no_redirect="1"$>
またこのタグは、 <MTCommentAuthor> で使うdefault引数のように機能するdefault_nameという引数を取ります。
<MTCommentAuthorLink default_name="Anonymous">
著者名がない場合は、default_nameが名前として使われます。
コメントの著者のメールアドレス。 spam_protect アトリビュートを設定すれば、メールアドレスへのリンクは表示されますが、スパム・ボット対策されたアドレスに変更されます。ウェブ・ブラウザでは、正しいメールアドレスとして表示されます。たとえば、以下の例
<$MTCommentEmail spam_protect="1"$>
では、メールアドレスが foo@bar.com のとき、タグの値は foo@bar.com となります。
コメントの著者のURL。
コメントの本文。ブログの設定で 改行と段落を自動的に変換する(Convert line and paragraph breaks) を有効にしていれば、段落--連続する二つの改行--は、<p> と </p> の囲みに変換され、残る単独の改行には <bt /> が追加されます。
ウェブゴグの設定 改行と段落を自動的に変換する(Convert line and paragraph breaks) は convert_breaks をアトリビュートに指定することで上書きすることができます。このアトリビュートが指定されていれるときは、常にエントリーの設定は上書きされます。たとえば、普段は設定を有効にしていたが、特定の場面で改行を無効にしたいときは、以下のようにします。
<$MTCommentBody convert_breaks="0"$>
コメントがブログに入力された日付。他の日付タグと同様 format と language アトリビュートを設定できます。詳しくは 日付タグのフォーマット を見てください。
リスト中のコメントの順番の数字。 1 から始まります。数字の並び方は、並び順 (昇順か降順) によります。
コメントの元になったエントリーの内容を表示するためのコンテナ・タグ。コンテナ内では <$MTEntry*$> タグを利用することができます。次のようなことができます。
<MTComments lastn="5" sort_order="descend"> <MTCommentEntry> エントリー <$MTEntryTitle$> についてのコメント。 </MTCommentEntry> </MTComments>
コメントを投稿する前に確認するとき使われる Comment Preview Template を作成するときに、以下のタグを使うことができます。これのタグは、 コメント で説明した似た名前のタグと同じ機能を持っています。以下のタグは、確認のときにしか使えない、ということだけが違います。
以上のタグは コメント の似た名前のタグと同じ機能です。
特別な秘匿タグで、 Comment Preview and Comment Error テンプレートで使います。システムは、コメントを投稿後、どのページを表示したらよいか知るために、このタグを利用します。このタグを使うときは Comment Preview と Comment Error テンプレートの中の HTML フォーム の INPUT HIDDEN の中に埋め込みます。
<input type="hidden" name="static" value="<$MTCommentPreviewIsStatic$>">
注意: このタグは Movable Type バージョン 1.4 からは利用しないことにしました。コメントのプレビューを作るためには、プレビューしたコメントを編集用のフォームに設定する方法を使います。 <$MTCommentPreviewState$> タグは使わないでください。 コメントの確認のためのページ ( Comment Preview Template ) を使うための特別なタグ。コメントをインラインもしくはポップアップで入力するとき、どちらでも同様に、コメントを投稿するために必要なデータの代わりに用います。
以下のテンプレート・タグと変数は、アーカイブ・ページとマスター・アーカイブ・インデックスに利用します。
アーカイブ・ページのリストをすべて表示するためのコンテナ・タグ。それぞれのアーカイブ・ページについて、以下のタグ変数を使えます。加えて、 MTEntries 用のタグをそれぞれのエントリーを表示するために使うことができます。たとえば、
<MTArchiveList> <a href="<$MTArchiveLink$>"><$MTArchiveDate$></a><br> <MTEntries> [<$MTEntryTitle$>] </MTEntries> <br><br> </MTArchiveList>
とすると、アーカイブ・ページへのリンクを表示し、それぞれのページに含まれるエントリーのリストを表示します。このタグには二つのアトリビュートを設定できます。 archive_type はどのアーカイブを表示するかを設定します。 lastn は、リストする数を設定します。
archive_type は設定しなくても構いません。もし省略されたときには、優先するアーカイブのタイプ、もしくはそのときのアーカイブのタイプを使います。このアトリビュートはブログのアーカイブ・タイプに、一つ以上の値を設定したときに便利です。たとえば、 Individual と Daily アーカイブを両方設定し、優先するアーカイブの種類には Individual が設定してあるときに、次のようにして、 Daily アーカイブを使うことができます。
<MTArchiveList archive_type="Daily"> ... </MTArchiveList>
lastn は、リストに表示する数を絞るときに使います。たとえば、ブログに10ヶ月間のアーカイブがあるときに、5ヶ月間だけ表示したい場合、次のようにします。
<MTArchiveList archive_type="Monthly" lastn="5"> ... </MTArchiveList>
アーカイブ・ページへの絶対URL。 デフォルトでは、そのとき作成中のアーカイブの種類のページへのリンクになります。たとえば、 Monthly アーカイブを作成中だと、 <$MTArchiveLink> はその Monthly アーカイブへのリンクになります。 archive_type アトリビュートて変更できます。設定できる値は、 Individual 、 Daily 、 Weekly 、 Monthly 、 Category のうちの一つです。
アーカイブページの「タイトル」。アーカイブの種類によって異なります。
カテゴリーの名前
日付。フォーマットは 月 日, 年 になります。
週の範囲。フォーマットは 月 日, 年 - 月 日, 年 になります。
月。フォーマットは 月 年 になります。
エントリーのタイトル。
MTArchiveTitle と MTArchiveLink を組み合わせると、簡単にマスター・アーカイブ・インデックスページを作ることができます。 MTArchiveTitle はアーカイブの種類に合わせて、値を変化させるからです。たとえば、次のように使います。
<MTArchiveList> <a href="<$MTArchiveLink$>"><$MTArchiveTitle$></a><br> </MTArchiveList>
この例では、どのアーカイブの種類のときにでも、アーカイブのページにいつも一覧を表示することができます。
特定のアーカイブに含まれているエントリーの数。たとえば、Monthly アーカイブを使うときは、その月のエントリーの数になります。このタグは <MTArchiveList> コンテナ・タグの中で以下のように使います。
<MTArchiveList> <a href="<$MTArchiveLink$>"><$MTArchiveTitle$> (<$MTArchiveCount$>)</a><br /> </MTArchiveList>
アーカイブの最初の日付。 Daily 、 Weekly 、もしくは Monthly アーカイブで使います。これは、標準の日付タグですから、Date Tag Formats でフォーマットを設定できます。このタグは MTArchiveList の内側と、 date-based アーカイブの中の MTEntries の 外側 で使うことができます。アーカイブのページに、日付をヘッダとして表示したいときに使います。例では「月 年」を表示します。
<$MTBlogName$> アーカイブ: <$MTArchiveDate format="%B %Y"$> <MTEntries> ... </MTEntries>
アーカイブの最後の日付。 Daily 、 Weekly 、もしくは Monthly アーカイブで使います。これは、標準の日付タグですから、Date Tag Formats でフォーマットを設定できます。 <$MTArchiveDate> と同様の使い方ができます。
アーカイブのカテゴリーの名前。 Category アーカイブのときに使います。このタグは MTArchiveList の内側と、 Category アーカイブの中の MTEntries の 外側 で使うことができます。アーカイブのページに、カテゴリーの名前をヘッダとして表示したいときに使います。たとえば次のように使います。
<$MTBlogName$> アーカイブ: <$MTArchiveCategory$> <MTEntries> ... </MTEntries>
現在のアーカイブの前のアーカイブの中身を表示させるためのコンテナ・タグ。 MTArchivePrevious の中では、たとえば、<$MTArchiveTitle$> タグは、前のアーカイブのタイトルを表示します。</MTArchivePrevious> でコンテナ・タグを閉じたら、現在のアーカイブについての表示に戻ります。 このタグは Daily 、 Weekly 、もしくは Monthly アーカイブで使います。individual entry archives で同様のことをしたいときには、 <MTEntryPrevious> タグを使います。
デフォルトでは「前のアーカイブ」はアーカイブの種類によります。 Daily アーカイブでは「前のアーカイブ」は前日(なければ、そのエントリー以前の直近)のエントリーになります。たとえば、先月のアーカイブに変更したいときには、 archive_type アトリビュートを使って変更してください。
例は後述の <MTArchiveNext> を参照してください。
現在のアーカイブの前のアーカイブの中身を表示させるためのコンテナ・タグ。 MTArchiveNext の中では、たとえば、<$MTArchiveTitle$> タグは、前のアーカイブのタイトルを表示します。</MTArchiveNext> でコンテナ・タグを閉じたら、現在のアーカイブについての表示に戻ります。このタグは Daily 、 Weekly 、もしくは Monthly アーカイブで使います。individual entry archives で同様のことをしたいときには、 <MTEntryNext> タグを使います。
デフォルトでは「次のアーカイブ」はアーカイブの種類によります。 Daily アーカイブでは「次のアーカイブ」は翌日(なければ、そのエントリー以降の直近)のエントリーになります。たとえば、翌月のアーカイブに変更したいときには、 archive_type アトリビュートを使って変更してください。
以下は、前と次のカテゴリーへのリンクと、メイン・インデックス・ページへ戻るリンクよるナビゲーションの例です。
<MTArchivePrevious> <a href="<$MTArchiveLink$>"><< <$MTArchiveTitle$></a> | </MTArchivePrevious> <a href="<$MTBlogURL$>">Main</a> <MTArchiveNext> | <a href="<$MTArchiveLink$>"><$MTArchiveTitle$> >></a> </MTArchiveNext>
以下は、 Daily アーカイブから、先月、翌月のアーカイブへのリンクを表示します。 Daily でカレンダーを表示したときに、カレンダーに先月、翌月へのリンクを表示するために使えます。
<MTArchivePrevious archive_type="Monthly"> <a href="<$MTArchiveLink archive_type="Monthly"$>"><$MTArchiveDate format="%b"$></a> </MTArchivePrevious> <MTArchiveNext archive_type="Monthly"> <a href="<$MTArchiveLink archive_type="Monthly"$>"><$MTArchiveDate format="%b"$></a> </MTArchiveNext>
以下のタグは、カテゴリーのリストと、それぞれのカテゴリーに関連する情報(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>
各タグについての詳細は、下記を参照してください。
カテゴリーのリストを表示するためのコンテナ・タグ。 このタグは、MTSubCategoriesと異なり、階層構造が使われていたとしてもそれに関係なく、各カテゴリーの出力を生成します。 このタグは、カテゴリーに階層構造を持たせず、階層用タグでコードが複雑になることを避けたい場合に、使用できます。
各カテゴリーには、下記のいずれのタグ変数も使うことができます。さらに、1つのカテゴリー下における各エントリーの情報を表示するときには、 <MTEntries> を使うこともできます。 以下に例を挙げます。
<MTCategories> <a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a><br /> <MTEntries> <$MTEntryTitle$> </MTEntries> <br /><br /> </MTCategories>
この例では、それぞれのカテゴリーへのリンクと、そのカテゴリーに属するエントリーのリストを表示します。
カテゴリーに一つもエントリーがないときは、デフォルトでは表示されません。 <MTArchiveList> と同様です。エントリーのないカテゴリーのアーカイブページは作られないので、もしリンクを作っても、正しくないリンクになってしまいます。
この設定は show_empty アトリビュートを設定することで、変更できます。たとえば、
<MTCategories show_empty="1"> <$MTCategoryLabel$> </MTCategories>
とすると、たとえ空のカテゴリーがあっても、すべてのカテゴリーを表示します。
カテゴリーにサブカテゴリーが属している場合、このタグは階層を「階層のない平らな状態」にして、並べ替えの基準による順序で一覧表示します。 サブカテゴリーを階層構造で表示するには、下記のMTSubCategoriesを使います。
数字でできたカテゴリーのID。
カテゴリーのラベル(名前)。
カテゴリーへアーカイブページへのリンク。ブログの設定で、 カテゴリー アーカイブを作る設定にしないと使うことはできません。設定されていないときは、ベージをリビルドするときにエラー・メッセージが表示されるでしょう。
カテゴリーの説明。
カテゴリーに属するエントリーの数。
カテゴリーが トラックバックを受けつける 設定になっているとき、そのカテゴリーへのトラックバック用のURLを表示します。このタグは、カテゴリーの中、すなわちカテゴリー・アーカイブか、 <MTCategories> の内側、もしくは category アトリビュートを指定して使います。
<$MTCategoryTrackbackLink category="Foo Bar"$>
アトリビュートを設定したときは、このタグはどこでも使うことができます。
MTSubCategoriesは、カテゴリーの階層構造を配慮するMTCategoriesの代わりに設けられています(「カテゴリー」を参照してください。) アトリビュート:
現在のサブカテゴリーがそのレベルにおいて、最初にリストされているかどうかを判定する条件ダグ。
現在のサブカテゴリーがそのレベルにおいて、最後にリストされているかどうかを判定する条件ダグ。
現在のカテゴリーに属するサブカテゴリーのMTSubCategoriesコンテナを再帰的に呼び出します。
アトリビュート:
これは、カテゴリーのリストを表示し、各カテゴリーに対し、同じテンプレート・コードを使うその子カテゴリーを表示します。以下に例を挙げます。
<MTSubCategories> <MTSubCatIsFirst><ul></MTSubCatIsFirst> <MTIfNonZero tag="MTCategoryCount"> <li><a href="<$MTCategoryArchiveLink$>" title="<$MTCategoryDescription$>"><MTCategoryLabel></a> <MTElse> <li><MTCategoryLabel> </MTElse> </MTIfNonZero> <MTSubCatsRecurse> </li> <MTSubCatIsLast></ul></MTSubCatIsLast> </MTSubCategories>
このループ・コンテナは、同じテンプレート・コードを使っているトップレベルの各カテゴリーを表示します。そしてMTSubCatsRecurseのところで、そのカテゴリーの子カテゴリーを表示し、MTSubCatsRecurseタグのmax_depthに指定したレベルまで、その下の子カテゴリーを表示します。
現在のカテゴリーの最上レベルの親から始まり、コンテナの各再帰で、現在のカテゴリーまでのパスまで続くコンテナ・タグ。
アトリビュート:
サブカテゴリーを認識しているMTEntriesコンテナ・タグの代わり。 これをカテゴリー・アーカイブ・テンプレートの中でMTEntriesの代わりに使って、テンプレートにそのカテゴリーに属するサブカテゴリーの全エントリーを含めるようにします。
アトリビュート:
設定されると、MTEntriesWithSubCategoriesは、カテゴリーのOR付きリストとそのすべてのサブカテゴリーにまで拡張します(例: "Parent Category OR Sub Category 1 OR Sub Category 2 OR Sub Sub Category 3 ...")。 2つのサブカテゴリーに同じ名前を付けることは可能です。その場合、categoryアトリビュートに、それらのサブカテゴリーの祖先を含め、スラッシュで区切って指定します。
たとえば、"Flies" というカテゴリーがあり、その下に"Fruit" というサブカテゴリーがある場合は、そのcategoryアトリビュートに category="Flies/Fruit" と指定し、"Food Groups" というカテゴリーの下に"Fruit" というサブカテゴリーがある場合は、それを category="Food Groups/Fruit" と指定すると、両者を区別できます。
カテゴリー(サブカテゴリー)名に元々スラッシュが使われている場合は、その名称を角カッコで囲んでおきます。
たとえば、 category="Beverages/[Coffee/Tea]" は、 Beverages というカテゴリーの下にある Coffee/Tea というサブカテゴリーを指定しています。
そのほかの引数はすべて直接MTEntriesに渡されます。
現在のカテゴリーの直接の親にだけ適用されるコンテナ・タグ。
ショートカット・タグ(通常のタグ)。以下のテンプレート・コードが使われているかのように戻ります。
<MTParentCategories glue="/"><MTCategoryLabel dirify="1"></MTParentCategories>
現在のカテゴリーの下にサブカテゴリーがあるかどうかを判定する条件ダグ。
現在のカテゴリーの上に親カテゴリーがあるかどうかを判定する条件ダグ。
現在のカテゴリーの下にサブカテゴリーがないかどうかを判定する条件タグ。
現在のカテゴリーの上に親カテゴリーがないかどうかを判定する条件タグ。 このタグによって親カテゴリーがないことが判定されると、最上位カテゴリーに関するHTMLを扱うことができるようになります。 番号付きでないネストされたリストを使って、CSSドロップダウン・メニューを作成する場合は、CSSのidセレクターをルート・タグだけに適用する必要があります(すべてのタグに適用すると、コードが無効になります)。 次のように適用します。
<ul<MTHasNoParentCategory> id="nav"</MTHasNoParentCategory>>
MTSubCategoriesのクローン。ただし、カテゴリー階層の最上位で常に開始します。
現在のカテゴリーの最上位の親カテゴリーにだけ適用されるコンテナ・タグ。
現在のカテゴリーが、指定したカテゴリーの親(直接の親またはさかのぼる親)であるかどうかを判定する条件タグ(たとえば、最上位のカテゴリーから指定したカテゴリーまでの間に、現在のカテゴリーが存在するかどうかを判定します)。
アトリビュート:
<MTIfIsAncestor child="Category Name">は、カテゴリー・コンテキストで使うと、「現在の(current)」のカテゴリーが、このchildアトリビュートに指定した子カテゴリー名の祖先であるかどうかを調べることができます。たとえば、"Cornwall"が"England"のサブカテゴリーであるとき、以下のコードは"England"のアーカイブ・ページに対し"Yes"を返します。
<MTIfIsAncestor child="Cornwall"> Yes </MTEntryIfAllowComments>
一方、"Cornwall"のカテゴリー・アーカイブ・ページでは、以下のコードはwhitespaceの結果を返します。
<MTIfIsAncestor child="England"> Yes </MTEntryIfAllowComments>
現在のカテゴリーが、指定したカテゴリーの子孫であるかどうかを判定する条件タグ(たとえば、最上位のカテゴリーから現在のカテゴリーまでの間に、指定したカテゴリーが存在するかどうかを判定します)。MTIfIsDescendantは、上記のMTIfIsAncestorとは反対の機能を持ちます。
アトリビュート:
以下のタグは、エントリーをカレンダー表示にして出力するために使います。Movable Typeのカレンダー出力は HTML のテーブルに限らず、他のさまざまなカレンダーを作るために十分な機能があります。
一ケ月分のカレンダーを表示するために使うコンテナ・タグ。 <MTCalendar> と </MTCalendar> タグの間に、カレンダーの「セル」(日付、もしくは月によっては空白) を表示できます。このタグには、特定の年、月の正確なカレンダーを表示するためのアトリビュート month を設定できます。このアトリビュートに this と設定されたときには、そのデータに合わせたカレンダーが表示されます。たとえば、アーカイブ・テンプレートで次のように使ったときは
<MTCalendar month="this"> ... </MTCalendar>
そのアーカイブに表示されている月のカレンダーが表示されます。 Individual 、 Daily 、 Weekly 、 Monthly のときに使えます。
month アトリビュートに last と設定したときには、現在の日付からみて前月のカレンダーを表示します。
特定の月のカレンダーを表示したいときには、アトリビュート month に、 YYYYMM のフォーマット (たとえば 200112 )で、年月を設定してください。
アトリビュート month が設定されていないときは、今月のカレンダーを表示します。
特定のカテゴリーのエントリーについてのカレンダーを表示したいときには、アトリビュート category にカテゴリーの名前を設定します。以下のようにします。
<MTCalendar month="200201" category="Foo"> ... </MTCalendar>
この例では、2002年1月のカテゴリー Foo に投稿されたエントリーがすべて表示されます。
数字の日付。(たとえば 1 )。 <MTCalendarIfEntries> 、 <MTCalendarIfNoEntries> コンテナ・タグで使います。
カレンダーにおけるセルの番号。この番号は カレンダーの左上のセル 1 から始まり、水平に右に移動するごとに増加します。このタグは、上の <$MTCalendarDay$> タグとは異なります。このタグは「空白でないセル」(たとえば特定の月のある日のエントリー) の中でのみ使われます。
その月のそれぞれに日のタイムスタンプ。アトリビュート format を設定できます。数字で日を表示したいだけのときには、 <$MTCalendarDay$> を使ってください。このタグは日付、時刻の情報まで表示したいときに使います。
コンテナ・タグ。 <MTCalendarWeekHeader> と </MTCalendarWeekHeader> で囲まれた内容が、それぞれの週の始めにだけ表示されます。
コンテナ・タグ。 <MTCalendarWeekFooter> と </MTCalendarWeekFooter> で囲まれた内容が、それぞれの週の終わりにだけ表示されます。
コンテナ・タグ。 <MTCalendarIfBlank> と </MTCalendarIfBlank> に囲まれた内容は、そのセルが「空白」、すなわち、その月でない日のときに表示されます。
コンテナ・タグ。 <MTCalendarIfEntries> で囲まれた内容は、そのセルの日にエントリーがあれば表示されます。その日のエントリーをすべて表示したいときには、 <MTEntries> タグを使うことができます。たとえば、次のようにします。
<MTCalendarIfEntries> この日のエントリー: <MTEntries> <a href="<$MTEntryLink$>"><$MTEntryTitle$></a><br /> </MTEntries> </MTCalendarIfEntries>
コンテナ・タグ。 <MTCalendarIfNoEntries> と </MTCalendarIfNoEntries> で囲まれた内容は、そのセルの日にエントリーがないときに表示されます。
コンテナ・タグ。 <MTCalendarIfToday> と </MTCalendarIfToday> に囲まれた内容は、そのセルが今日の日付であったときに表示されます。
次の例は、標準的なカレンダーを表示します。今月分を表示します。
<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> </MTCalendarIfBlank></td> <MTCalendarWeekFooter></tr></MTCalendarWeekFooter> </MTCalendar> </table>
注意:カレンダーの表示は、サーバに比較的大きな負荷が加わります。複数のページに同じカレンダーを表示したいときには、そのカレンダーを Index テンレートとして作り、SSI (サーバ・サイド・インクルード) もしくは PHP や他の手段で、それぞれのページに読みこませるようにするといいでしょう。
以下は、トラックバック に関連するタグです。
エントリー、カテゴリー、もしくはシステム全体への ping のリストを表示するためのコンテナ・タグ。 たとえば、 TrackBack Listing Template など、エントリーの内容に対して使われたとき、このタグはその特定のエントリーに送らせたトラックバックのリストを表示します。
カテゴリー・アーカイブに関連するテンプレートで使われたときには、そのカテゴリーへのすべてのトラックバックのリストを表示します。
その他の場合、システム全体で受けたすべてのトラックバックのリストを表示します(後述するように lastn を使うこともできます)。
特定のカテゴリーへのトラックバックを表示したいときには、 category アトリビュートを使います。
<MTPings category="Foo"> ... </MTPings>
アトリビュート sort_order and lastn を使うことができます。これらは、他の Movable Type タグのときと同様に使えます。 sort_order に設定できるのは、 ascend もしくは descend です。 lastn には、1以上の整数 N を設定してください。最新の N 個のトラックバックを表示します。
例は、カテゴリー Foo Bar に送られた 15 個の最新のトラックバックをブログのトップページに表示するためのものです。以下を Main Index Template に追加してください。
<MTPings category="Foo Bar" lastn="15"> <a href="<$MTPingURL$>"><$MTPingTitle$></a><br /> </MTPings>
数字で構成されているトラックバックID。
送られてきたトラックバックに設定されているタイトル。普通は相手のエントリーのタイトルです。
送られてきたトラックバックのURL。普通は相手のエントリーへのリンクするためのURLです。
送られてきたトラックバックの概要。
トラックバックが送られてきた日付。他の日付タグと同様に、 format 、 language アトリビュートを設定することができます。詳しくは 日付タグのフォーマット を参照してください。
トラックバックを送ってきたブログの名前。
トラックバックを送ってきたホストの IP アドレス。
あるエントリーが送信したトラックバックのリストを表示するためのコンテナ・タグ。これらは、permalink ではなく、トラックバック URL です。以下に例を挙げます。
<MTPingsSent> URL: <$MTPingsSentURL$><br /> </MTPingsSent>
トラックバックを送信した先のURL。 <MTPingsSent> タグで使います。
以下のタグは、サーチ・テンプレートでのみ利用可能です。
実行された検索の結果を表示するためのコンテナ・タグ。このコンテナ・タグの中では、サーチの結果はエントリーなので、 <$MTEntry*$> を使うことができます。また、 <$MTBlog*$> を使って、検索されたエントリーが投稿されているブログについてのデータを表示することもできます。 以下は例です。
<MTSearchResults> <MTBlogResultHeader> <h2>Results from <$MTBlogName$></h2> </MTBlogResultHeader> <h2><a href="<$MTEntryLink$>#<$MTEntryID pad="1"$>"><$MTEntryTitle$></a></h2> <$MTEntryExcerpt$> <$MTEntryEditLink$><br /> <div class="posted">Posted in <$MTBlogName$> on <$MTEntryDate$></div> </div> </MTSearchResults>
すべてのブログを検索して、該当した結果の数。これはブログごとの数字ではありません。
検索したが、結果がなかったときに内容が表示されるコンテナ・タグ。次のように使います
<MTNoSearchResults> <h2>Searched for "<$MTSearchString$>"</h2> <p>No pages were found containing "<$MTSearchString$>".</p> </MTNoSearchResults>
検索が実行されていないときに内容が表示されるコンテナ・タグ。 閲覧者が直接、ブラウザであなたの mt-search.cgi を閲覧しようとする場合は、以下のようなURLを使います。
http://YOURDOMAIN.COM/PATH-TO/mt-search.cgi
あるいは新しいコメントを検索する場合には、以下のようなURLを使います。
http://YOURDOMAIN.COM/PATH-TO/mt-search.cgi?Type=newcomments&help=1
そのとき、このタグを、検索方法の説明やより高度な検索フォームの表示に利用すると便利です。以下が一例です。
<MTNoSearch> <h2>Instructions</h2> <p>... Some search instructions ...</p> </MTNoSearch>
普通の検索結果(新しいコメントの検索結果ではない)を表示するとき、検索結果は、ブログごとにグループにまとめられています。このタグは、グループの中の最初の結果を表示するときに、その内容を表示するコンテナタグです。ブログのタイトルや、そのブログのトップページへのリンクを表示するのに便利です。
検索結果のエントリーを編集画面へのリンク。検索したユーザがMovable Typeにログインしていて、そのエントリーを編集できる権限を持っているときに表示されます。
HTMLエンコードされたサーチ・クエリー。
上記のどの分類にも、まったく当てはまらないタグがいくつかあります。
条件(コンディション)タグすべてに対して「そうでない場合」に <MTElse> を利用します。普通は名前に If が含まれているタグ(たとえば、 <MTEntryIfExtended> )と一緒に使います。 <MTElse> は、条件に合致しなかったときに内容が表示されるコンテナ・タグです。 <MTElse> は、条件タグの内側で条件タグが「そうでない場合」のために使います。次のように使います
<MTEntryIfExtended> このエントリーには追記(extended)があります。 <MTElse> このエントリーには追記(extended)がありません。 </MTElse> </MTEntryIfExtended>
テンプレート・モジュール(テンプレート・マニュアルの テンプレート・モジュール の項を参照してください)や外部ファイルを別のテンプレートに読み込むために MTInclude タグを使います。 <MTInclude> には次のアトリビュートを利用できます。
テンプレートモジュールの名前を設定します。たとえば、ヘッダなど、すべてのHTMLファイルに共通する部分があって、その部分をMovable Typeを使って管理したいとき、共通部分をテンプレート・モジュールにして、その名前を Header に設定した後で、 <MTInclude> を使って、次のように読みこみます。
<$MTInclude module="Header"$>
テンプレートに読み込みたい外部ファイルのパスを設定します。パスはフルパスか、 Local Site Path からの相対パスのいずれかです。たとえば、 foo.html がブログの Local Site Path ディレクトリにあるとき、次のようにして読み込みます。
<$MTInclude file="foo.html"$>
このファイルは ページがリビルトされる そのときに読み込まれます。SSI (Server Side Includes)と混同しないように注意してください。SSIはウェブサーバにリクエストが来るたびに、毎回外部ファイルを読み込みます。 <MTInclude> を使う場合は、まず外部ファイルを編集した後、編集されたページを読み込むためにリビルドしてください。
Index Templateもしくは特定のエントリーへのURLを自動的に生成するためのタグ。 <MTLink> には以下のアトリビュートを設定します。
そのページがリビルトされた時間を表示する日付/時刻のタグ。 更新時刻: を表示したいときに、次のように使います。
このページの更新時刻: <$MTDate format="%B %d, %Y %I:%M %p"$>
特定のクエリーに対してのGoogle APIを使った検索結果、もしくは特定のページに関連したページのリストを表示するためのタグ。以下のアトリビュートを設定できます。
検索・クエリー。
似たページを検索したいその対象のページ。設定できる値は、対象ページのURL、もしくは 1 です。後者はユーザが設定した自分のウェブサイトのURLを意味します。例を参考にしてください。
アトリビュートに title="1" と設定すると、クエリーには、そのエントリーのタイトルが設定されます。
アトリビュートに excerpt="1" を設定すると、クエリーには、そのエントリーの概要(excerpt)が設定されます。
アトリビュートに keywords="1" を設定すると、クエリーには、そのエントリーのキーワードが設定されます。
Googleから得る検索結果の数を設定します。Googleは現在、最大10個までしか結果を返しません。よって現在の最大値は 10 となります。
例として、 Movable ype をクエリに設定して最初の5個の結果を表示します。
<MTGoogleSearch query="movable type" results="5"> <a href="<$MTGoogleSearchResult property="URL"$>"><$MTGoogleSearchResult property="title"$></a><br /> </MTGoogleSearch>
ユーザのウェブ・サイトに似たページのリストです。
<MTGoogleSearch related="1"> <a href="<$MTGoogleSearchResult property="URL"$>"><$MTGoogleSearchResult property="title"$></a><br /> </MTGoogleSearch>
アトリビュート query 、 related 、 title 、 excerpt は同時に設定することはできません。
Individual Archive TemplateでGoogle検索タグを使うのであれば、エントリーを保存するときに検索結果も保存されることに注意してください。リビルドの時間が余計にかかるようになり、もしコメントを多数受けとるサイトであれば、一日あたりのGoogle APIの利用制限を超えてしまうかもしれません。
注意: このタグは、「Google API key」を事前に入試して、ブログの設定画面に入力していないと使えません。また、 SOAP::Lite と LWP::UserAgent がインストールされている必要があります。インストールされているかどうかは、 mt-check.cgi を使えばわかります
訳注:UTF-8でなければ、日本語を利用することはできません。
Google APIの個別の検索結果。( <MTGoogleSearch> を参照)
アトリビュート property に検索結果の特定の項目(タイトル、URL、概要)を設定できます。省略されたときは、 title になります。
設定できる値は summary 、 URL 、 snippet 、 title です。
変数に値を設定します。変数の名前は name アトリビュートに、値は value アトリビュートに設定します。設定した値は、次に説明する <MTGetVar> タグで参照することができます。
変数の値を取得して、タグをその値に置き換えます。変数の名前は name アトリビュートに指定します。 例として、テンプレート・モジュールで、変数 foo に値を設定します。
<MTSetVar name="foo" value="bar">
そして、そのテンプレート・モジュールを読み込み、その変数の値を利用します。
<MTGetVar name="foo">
Movable TypeのCGIスクリプトがあるディレクトリのURLパス。ブログの設定ファイル mt-config.cgi の CGIPath に設定された値です。(インストールのときに設定します。インストールの手引を参照してください) MTCGIPath は mt-comments.cgi や mt-add-notify.cgi といった Movable Type の CGIスクリプトをリンクするために使われます。単純に、いちいちCGIのパスをテンプレートに書き込まずに、このタグを使ってください。たとえば、コメントの投稿用フォームを作るときに、次のように使います。
<form method="post" action="<$MTCGIPath$><$MTCommentScript$>">
設定ファイル mt-config.cgi に設定された CommentScript の値。省略時は mt-comments.cgi となります。
設定ファイル mt-config.cgi に設定された TrackbackScript の値。省略時は mt-tb.cgi となります。
設定ファイル mt-config.cgi に設定された StaticWebPath の値。
アップロードされた画像の絶対URL。 Uploaded Image Popup Template の中で使われています。
アップロードされた画像の幅。 Uploaded Image Popup Template の中で使われています。
アップロードされた画像の高さ。 Uploaded Image Popup Template の中で使われています。
このタグは Comment Error Template の中でのみ使われます。コメントの登録のときに起きたエラー、たとえば、メールアドレスが入力されていないなどのエラーメッセージを表示します。
現在動いているMovable Typeのバージョンを表示します。たとえば 3.01 となります。
mt-config.cgi の中で設定された PublishCharset 。設定されていないときは、 iso-8859-1 が設定されていると見なされます。
コメント登録機能に利用されるユーザー認証で、サイン・インをするときのリンク先 URL。
コメント登録機能に利用されるユーザー認証で、サイン・アウトをするときのリンク先 URL。
グローバル・タグ・アトリビュートはどの変数置換タグ(値に置き換えられるタグ、他のタグに指示を与えるために「囲む」コンテナ・タグとは異なります)に対しても使えます。しかし、どのタグで使っても、それがいい考えであるわけではありません。特定のタグでしか使えないアトリビュートを使うときの考え方と同様です。グローバル・アトリビュートは、それぞれのタグ専用のアトリビュートと同じように name="value" と、たとえば次のように使います。
<$MTEntryExcerpt encode_html="1"$>
HTMLエントコードされた概要を表示します。
以下はグローバル・タグ・アトリビュートの一覧です。
タグの値に対して適用されるテキストフォーマットのフィルタのリストを設定します。フィルタの名前は短かくて、確実に他のものと区別できるべきです。フィルタの名前は、コンマ( , )で区切ります。複数のフィルタを設定すると、リストの順番に適用します。たとえば、CPANモジュール Text::WikiFormat を適用するための短い名前 wiki を設定するためには、次のようになります。
<$MTEntryTitle filters="wiki"$>
''これはタイトルです'' をタイトルに設定するためには <em>これはタイトルです</em> とします
1 に設定すると、HTMLエンコードされます。たとえば、 Foo & Bar -> Baz は、HTMLエンコードすると Foo & Bar -> Baz に変わります。
使い方:
<$MTEntryExcerpt encode_html="1"$>
1 に設定すると、XMLフォーマットでエンコードされていなければならない、すべての文字がエンコードされます。対象となるのは、 & 、 < 、and > です。 たとえば、 Foo & Bar -> Baz は、XMLエンコードすると Foo & Bar -> Baz に変わります。
使い方 (RSS のテンプレートで使います);
<item> <title><$MTEntryTitle encode_xml="1"$></title>
注意: encode_html との違いは、 HTML::Entities モジュールがインストールされていて、 mt-config.cgi のオプション NoHTMLEntities を有効にしていないときには、HTML のほうが多くの文字が変換の対象になることです。
1 に設定すると、タグの値が Javascript の文字列の値として使えるようにエンコードします。たとえば、 Foo "Bar" Baz's 1/2 Quux はエンコードすると Foo \"Bar\" Baz\'s 1\/2 Quux に変わります。
使い方:
<script language="javascript"> var str = '<$MTEntryTitle encode_js="1"$>'; </script>
PHPで使う三種類の値、シングル・クオート、ダブル・クオート、ヒア・ドキュメントのうち、いずれか一つのフォーマットに合わせてエンコードします。アトリビュートの値として、 q (シングル・クオート), qq (ダブル・クオート) もしくは heredoc (ヒア・ドキュメント、 here でも、ヒア・ドチュメントとして動きます) を設定できます。
例 q の使い方:
<?php $str = '<$MTEntryTitle encode_php="q"$>' ?>
例 heredoc の使い方:
<?php $str = <<<HERE <$MTEntryBody encode_php="heredoc"$> HERE; ?>
URLでの利用に合わせたフォーマットに、タグの値をエンコードをします。アルファベット以外の文字を16進数ベースのものに変換します。たとえば、 foo bar は foo%20bar に変換されます。
使い方:
<a href="/search?q=<$MTEntryTitle encode_url="1"$>">Search</a>
(この例のもとを作ってくれたスコット・アンドリュー・レペラに感謝します)
1 を設定すると、タグの値に含まれるすべてのHTMLエンティティをデコードします。たとえば foo<br> は、デコードされて foo<br> に変換されます。
使い方:
<$MTEntryTitle decode_html="1"$>
1 を設定すると、タグの値に含まれるすべてのXMLエンティティをデコードします。たとえば、 foo<br> は、デコードされると foo<br> になります。
使い方:
<$MTEntryTitle decode_xml="1"$>
1 を設定すると、タグの値に含まれるすべての HTML タグを除去します。たとえば Foo<br> Bar は、 Foo Bar に変換されます。
使い方:
<$MTEntryTitle remove_html="1"$>
1 を設定すると、タグを「dirify」します。すなわち、タグの値を、ファイル名や検索用に合わせたものに変換します。値は、小文字(abc...)に変換され、HTMLのタグやエンティティは除去され、普通でない文字 (アルファベット、数字、アンダースコア ( _ )、空白以外の文字) は除去され、空白はアンダースコア ( _ ) に変換されます。 dirify は high-ASCII (アクセント文字など) も low-ASCII、すなわち crudite は crudite に変換されます。たとえば、 Foo "Baz" is<br> Bar! は foo_baz_is_bar になります。
(訳注: 日本語版では dirify で、high-ASCII の変換は行いません。
使い方:
<$MTArchiveCategory dirify="1"$>
(訳注: 日本語は dirify によってすべて除去されてしまいます)
タグの値を大文字(ABC...)にします。
使い方:
<$MTEntryTitle upper_case="1"$>
タグの値を小文字(abc...)にします。
使い方:
<$MTArchiveDate format="%B" lower_case="1"$>
最初のN文字を取り出します。N はアトリビュートの値として設定します。
使い方:
<$MTEntryTitle trim_to="15"$>
この例では、エントリータイトルの最初の15文字だけを表示します。
タグ・テキストから改行コード(キャリッジ・リターンおよびライン・フィード)を除きます。
使用例:
<$MTCommentURL strip_linefeeds="1"$>
タグの値を、全体でN文字になるよう、余白を空白で埋めます。Nはアトリビュートの値として設定します。
使い方:
<$MTCalendarDay space_pad="3"$>
この例では、 3 という元の値が" 3 "に変換されます。
タグの値を、全体でN文字になるよう、余白を 0 で埋めます。Nはアトリビュートの値として設定します。
使い方:
<$MTCalendarDay zero_pad="5"$>
この例では、 8 という元の値を 00008 に変換します。
sprintf のフォーマットで変換します。アトリビュートの値として、 sprintf のフォーマットを指定します。タグの値は、 sprintf に与える引数になります。たとえば、 zero_pad と同じことをするためには、次のようにします。
<$MTCalendarDay sprintf="%05s"$>
テキストの除去フィルタを実行します。アトリビュートに 1 を設定すると、デフォルトの設定、すなわちブログの設定か mt-config.cgi での設定に従って、タグを除去します。 0 を設定すると、除去機能は無効になります。その他の値を設定すると、除去機能は有効だと見なします。
使い方:
<$MTEntryBody sanitize="a href"$>
この例では、 <a> ( href アトリビュートと一緒に使われます) 以外のすべての 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
以下は、フォーマットの設定の一覧です。
省略された週の名前。たとえば Thu 。(訳注: jp のときは「火」)
完全な週の名前。たとえば Thursday 。(訳注: jp のときは「火曜日」)
省略された月の名前。例: Sep 。(訳注: jp のときは「9」)
完全な月の名前。例: September (訳注: jp のときは「9」)
その月での日付。二桁の数字で、一桁のときは 0 が付きます。例: 09
その月での日付。二桁の数字で、一桁のときは空白が付きます。例: 9 。
24時間表示の時刻。二桁の数字で、一桁のときは 0 がつきます。例: 16
12時間表示の時刻。二桁の数字で、一桁のときは 0 がつきます。例: 04
年初からの日。三桁の数字で、一桁、二桁のときは、 0 がつきます。例: 056
24時間表示での時間。二桁の数字で、一桁のときは空白がつきます。例: 9
12時間表示での時間。二桁の数字で、一桁のときは空白がつきます。例: 4
月。二桁の数字で、一桁のときは 0 がつきます。例: 09
分。二桁の数字で、一桁のときは 0 がつきます。例: 02
午前か午後。 AM 、もしくは PM になります。
秒。二桁の数字で、一桁のときは 0 がつきます。例: 04
数字で表した曜日。 0 ~ 6 の範囲。例: 0 ( 日曜 を示す)
言語に合わせた日付の表示。ほとんどの言語では、これは %B %d, %Y と同じです。 例: September 06, 2002 (訳注: jp では 2002年09月06日)
言語に合わせた時間の表示。ほとんどの言語では、 %I:%M %p と同じです。 例: 04:31 PM (訳注: jp では 16:31 )
年。二桁の数字で、一桁のときは 0 がつきます。例: 01
年。四桁の数字。例: 2001
注意: Movable Type 2.0 以降は、 %Z をサポートしません。タイムゾーンが必要なときは、 <$MTBlogTimezone$> タグを利用してください。