「WordPressで学ぶPHP(3)関数編」を発売しました。
本書は「WordPressで学ぶPHP(1)変数・制御構造編」「WordPressで学ぶPHP(2)データ構造(配列・オブジェクト)編」の続編にあたり、PHP組み込みの関数や、独自の関数を作る方法などを解説します。
Kindle本で、定価400円です。
ObjectTree&ObjectRelationプラグインβ1(その6・テンプレートタグの詳細・後半)
昨日に続き、ObjectTreeプラグインおよびObjectRelationプラグインで追加されるテンプレートタグを解説します。
1.オブジェクトの種類の出力と判断
ツリー内の各オブジェクトの種類は、MTObjectTreeClassタグで出力することができます。
MTObjectTreeClassタグの出力値は、オブジェクトの種類に応じて以下のようになります。
オブジェクトの種類 | 出力する値 |
---|---|
記事 | entry |
ウェブページ | page |
カテゴリ | category |
フォルダ | folder |
ウェブサイト | website |
ブログ | blog |
画像 | image |
ビデオ | video |
オーディオ | audio |
ファイル | file |
タグ | tag |
インデックステンプレート | template |
フリーテキスト | fjot_free_text |
また、オブジェクトの種類によって出力を分けたい場合、MTObjectTreeIfClassというブロックタグでオブジェクトの種類を判断することができます。
classモディファイアで、オブジェクトの種類を指定します。種類に指定する文字列は、MTObjectTreeClassタグの出力値と同じです。
例えば、記事を出力するときだけ何か処理をしたい場合は、以下のようにタグを組みます。
<mt:ObjectTreeIfClass class="entry"> 記事を出力する際の処理 </mt:ObjectTreeIfClass>
MTObjectTreeIfClassタグのブロックの中では、オブジェクトの種類に応じたテンプレートタグを使うことができます。
例えば、記事を出力する場合だと、MTEntry系のテンプレートタグを使うことができます。
2.その他のテンプレートタグ
以下のようなテンプレートタグもあります。
2-1.MTObjectTreeNameタグ
MTObjectTreeタグで出力中のツリーの名前を出力するファンクションタグです。
MTObjectTreeタグのブロックの中で使うことができます。
2-2.MTObjectTreeDescriptionタグ
MTObjectTreeタグで出力中のツリーの概要を出力するファンクションタグです。
MTObjectTreeタグのブロックの中で使うことができます。
2-3.MTObjectTreeTotalCountタグ
ツリーに含まれるオブジェクトの数を出力するファンクションタグです。
ただし、未公開の記事など、出力されないオブジェクトは数に含みません。
MTObjectTreeタグ/MTXXXObjectTreeタグのブロックの中で使うことができます。
2-4.MTObjectTreeCountタグ
出力中のオブジェクトと同じ親を持つオブジェクトの数を出力するファンクションタグです。
MTObjectNodesタグのブロックの中で使うことができます。
2-5.ObjectTreeIfBlogChildrenタグ
出力中のオブジェクトが、ブログ(またはウェブサイト)の子であるかどうかを判断するブロックタグです。
記事/ウェブページ/カテゴリ/フォルダ/タグ/テンプレート/アイテム系のオブジェクトを出力している際に、ブロックの内部が実行されます。
一方、ウェブサイト/ブログ/フリーテキストを出力している際には、ブロックの内部は実行されません。