拙著「FXはチャートで勝つ!」が発売されました。
FX(外国為替証拠金取引)でのチャートの読み方を解説しています。
自由国民社刊で、定価1,728円(消費税込み)です。
ObjectTree&ObjectRelationプラグインβ1(その5・テンプレートタグの詳細・前半)
ObjectTreeプラグインおよびObjectRelationプラグインで追加されるテンプレートタグを解説します。
今日はその前半です。
1.ツリーの読み込み
以下のブロックタグでツリーを読み込みます。
1-1.MTObjectTreeタグ
ObjectTreeプラグインで作成したツリーを読み込みます。
nameモディファイアで、読み込むツリーの名前を指定します。
また、以下のモディファイアのどれか1つを指定することもできます。
| モディファイア | 内容 | 
|---|---|
| blog_id="○" | 指定したIDのブログ(またはウェブサイト)からツリーを読み込みます。 | 
| parent="1" | 親のウェブサイトからツリーを読み込みます。 | 
| global="1" | グローバル(システムレベル)のツリーを読み込みます。 | 
ツリーにオブジェクトがない場合に、MTElseタグのブロックを出力することもできます。
<mt:ObjectTree name="ツリーの名前"> ツリーを出力する部分 <mt:Else> ツリーにオブジェクトがない場合に出力する部分 </mt:ObjectTree>
1-2.MTXXXObjectTreeタグ(XXXはカスタムフィールドにつけたテンプレートタグ名)
ObjectRelationプラグインで作成したツリーを読み込みます。
タグ名の「XXX」の部分には、カスタムフィールドにつけたテンプレートタグ名を指定します。
2.ツリーの各オブジェクトの出力
ツリーの各オブジェクトは、MTObjectTreeNodesタグのブロックで出力します。
MTObjectTreeNodesタグのブロック内では、Movable Type標準のブロック系タグと同様に、__first__/__last__/__even__/__odd__/__counter__の各変数を使うことができます。
また、あるオブジェクトから下の階層に下って、再帰的にオブジェクトを出力するには、MTObjectTreeRecurseタグを使います。
例えば、ツリーをul/li要素で出力する場合だと、一般的には以下のようにタグを組みます。
<mt:ObjectTree name="ツリーの名前">
  <mt:ObjectTreeNodes>
    <mt:If name="__first__"><ul></mt:If>
    <li>
      各オブジェクトを出力する処理
      <$mt:ObjectTreeRecurse$>
    </li>
    <mt:If name="__last__"></ul></mt:If>
  </mt:ObjectTreeNodes>
</mt:ObjectTree>
ただし、ツリー内の以下のオブジェクトは、通常は出力しません。
| オブジェクトの種類 | 出力しない条件 | 
|---|---|
| 記事とウェブページ | 公開していない場合 | 
| インデックステンプレート | 「テンプレートの設定」の「公開」が「公開しない」になっている場合 | 
| タグ | プライベートタグ(タグ名の先頭が「@」)の場合 | 
また、出力しないオブジェクトに子孫オブジェクトがある場合は、それらも出力しません。
例えば、ツリーが以下のようになっている場合、記事2だけでなく、記事3と記事4も出力しません。
- 記事1
- 記事2(未公開)
  - 記事3
    - 記事4
 
 
- 記事3
    
- 記事6
未公開のオブジェクトも含めて、ツリー内のオブジェクトをすべて出力する場合は、MTObjectTreeタグ/MTXXXObjectTreeタグに「include_private="1"」のモディファイアを指定します。
3.各オブジェクトの情報を出力するファンクションタグ
以下のファンクションタグで、ツリー内の各オブジェクトの情報を出力することができます。
| テンプレートタグ | 出力する情報 | 
|---|---|
| MTObjectTreeLabel | ラベル オブジェクトの設定でラベルを入力した場合はその値 ラベルを入力していなければ、オブジェクト本来のラベル(例:記事のタイトル) | 
| MTObjectTreeLink | オブジェクトのリンク先のアドレス | 
| MTObjectTreeNote | オブジェクトの設定の「メモ」に入力した文字列 | 
| MTObjectTreeOptions | オブジェクトの設定の「オプション」に入力した文字列 | 
| MTObjectTreeDepth | オブジェクトのツリー内での階層(最上位が1、その下が2、...) | 
MTObjectTreeLabelタグとMTObjectTreeLinkタグは、オブジェクトの種類に応じて、内部的に以下のテンプレートタグを実行します。
| オブジェクトの種類 | MTObjectTreeLabel | MTObjectTreeLink | 
|---|---|---|
| 記事 | MTEntryTitle | MTEntryPermalink | 
| ウェブページ | MTPageTitle | MTPagePermalink | 
| カテゴリ | MTCategoryLabel | MTCategoryArchiveLink | 
| フォルダ | MTFolderLabel | 空文字列を出力 | 
| ウェブサイト | MTWebsiteName | MTWebsiteURL | 
| ブログ | MTBlogName | MTBlogURL | 
| アイテム系(画像等) | MTAssetLabel | MTAssetURL | 
| タグ | MTTagName | MTTagSearchLink | 
| インデックステンプレート | MTIndexName | MTIndexLink | 

 
  