上級者向けテンプレート: テンプレート・タグを使う

重要:HTMLを書いたり編集したりするのに慣れていない方は、TypePadのデフォルト・テンプレートを引き続き、お使いください。




タグの構文


タグはすべて、HTMLタグのように「<」と「>」の間に囲まれています。また、任意で以下のように「$」を「<」と「>」の間に挿入することもできます。


<$MTEntryBody$>


「$」を挿入しておくと、HTMLタグとTypePadタグとの識別が素早くできるので便利です。


$」は、デフォルト・テンプレートとドキュメントの中で、変数タグだけに使いコンテナ・タグには使わないよう統一されています。


理由は、コンテナ・タグの終了タグに「$」が使用されていると、システムが終了タグを見つけ出せなくなってしまうからです。したがって「$」は変数タグだけに使い、コンテナ・タグの終了タグには使用しないでください


タグの種類


コンテナ・タグ


タグには、「コンテナ」タグと呼ばれるタグがあります。これは、コンテナの開始を示すタグと終了を示すタグの間に、ひとまとまりのテキストとタグから成るサブテンプレートを納めたものです

たとえば、仮に<MTFoo>というコンテナ・タグがあれば、それはテンプレートで以下のように使われるかもしれません。


<MTFoo>
Foo bar
</MTFoo>

コンテナ・タグの開始タグと終了タグはHTMLの標準タグに似ています。


リスト・コンテナ・タグ


コンテナ・タグが、たとえば<MTEntries>のようにリストを表す場合、コンテナ・タグの中のサブテンプレートは、リストの各アイテムに適用されます。


たとえば、<MTEntries>タグを使うと、<MTEntries></MTEntries>の間のマークアップがリストの各エントリーに適用されます。


条件コンテナ・タグ


コンテナ・タグが、たとえば<MTEntryIfExtended>のように条件文を表すときは、その条件を満たした場合に限り、開始タグと終了タグの間のマークアップが表示されます。


たとえば<MTEntryIfExtended>タグの場合、エントリーに追記があるかどうかが条件です。


変数タグ


コンテナ・タグでないタグはすべて単純な変数置換用のタグです。変数タグは、動的な情報の断片を一時的に保管する場所です。たとえば、<$MTEntryTitle$>タグは、エントリーのタイトルに置き換わります。


タグのアトリビュート(属性)


タグの中には、アトリビュートを取り、タグのデフォルトの動作を変更できるものがあります。タグのアトリビュートは、HTMLのタグのアトリビュートと同様の仕組みで、タグの中に名前と値のペアであるname="value"が半角スペースを区切りに列挙されます。以下に例を挙げます。


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


(このアトリビュートについては、<MTEntries>のドキュメントを参照してください。)


アトリビュートの値は必ず「"」(ダブルクオーテーション)で囲んでください。囲まないと、正しく動作しないことがあります。


$」付きのMTタグでアトリビュートを使うときは、最後の「$」の前にアトリビュートを置いてください。以下に例を挙げます。


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


たとえば、上記のformatなど、いろいろなタグと共に使うことができるアトリビュートは、この例のようにタグと一緒に記述します。


コンテキストの重要性


タグはそのほとんどがコンテキスト依存型です。つまりタグは使われるコンテキスト(文脈)次第で動作が変わってきたり、動作しなかったりするので、適切なコンテキストの中で使う必要があります。


コンテキストは通常、コンテキストを囲むテンプレートやコンテナ・タグを見ればわかります。たとえば、エントリーのコンテキストであるかどうかは、<MTEntries>タグ、Individual Entryのアーカイブ・ページ、Comment Listingテンプレート、Comment Previewテンプレートのいずれかが使われていることでわかりますが、タグの中にはこのコンテキストの中で使うべきものがあります。


たとえば、<$MTEntryTitle$>タグや<MTComments>コンテナ・タグは、こうしたコンテキストの中で使ってはじめて意味を成します。







Copyright © 2003-2005 Six Apart


[先頭へ戻る]