MTSubFolders
現在のフォルダの子フォルダを階層化して一覧表示するブロックタグです。MTSubFolderRecurse ファンクションタグと組み合わせることで子孫フォルダを表示します。
- 使い方
<mt:SubFolders top="1">
<mt:SubCatIsFirst>
<ul class="folder">
</mt:SubCatIsFirst>
<mt:HasParentFolder>
<mt:HasSubFolders>
<li class="sub parent">
<mt:Else>
<li class="sub">
</mt:HasSubFolders>
<mt:Else>
<li class="top">
</mt:HasParentFolder>
<$mt:FolderLabel$>
</li>
<$mt:SubFolderRecurse$>
<mt:SubCatIsLast>
</ul>
</mt:SubCatIsLast>
</mt:SubFolders>
モディファイア
- include_current="1"
-
値を 1 に指定すると、現在のフォルダを含めて表示します。初期値は 0 です。
- top="0 | 1"
-
値に 1 を指定すると、最上位のトップレベルフォルダの一覧を表示します。MTTopLevelFolders ブロックタグと同様の挙動となります。初期値は 0 です。
- sort_by="user_custom"
-
Movable Type 5.1 で追加されました。初期値は user_custom です。管理画面で並び替えた順番で、フォルダの一覧を出力します。
例えば、以下のコードはフォルダを並び順で階層表示し、各フォルダのウェブページを一覧表示します。
<mt:SubFolders top="1"> <mt:FolderHeader><ul></mt:FolderHeader> <mt:If tag="FolderCount"> <li><$mt:FolderLabel$> (<$mt:FolderCount$>) <mt:Pages sort_by="title" sort_order="ascend"> <mt:PagesHeader> <ul> </mt:PagesHeader> <li class="page page-<$mt:PageID$>"><a href="<$mt:PagePermalink$>"><$mt:PageTitle$></a></li> <mt:PagesFooter> </ul> </mt:PagesFooter> </mt:Pages> <mt:Else> <li><$mt:FolderLabel$> </mt:If> <$mt:SubFolderRecurse$> </li> <mt:FolderFooter></ul></mt:FolderFooter> </mt:SubFolders>
user_custom 以外にも次の値を指定することができます。この場合、管理画面で設定した並び順を無視し、指定した値で並び替えます。
- label : 「フォルダ名」
- description : 「説明」
- basename : 「出力ファイル/フォルダ名」
- created_on : 「作成日」
- modified_on : 「更新日」
- user_custom : 管理画面の並びかえ順(標準)
- sort_order="ascend | descend"
-
並べる順序を指定します。ascend を指定すると昇順、descend は降順になります。初期値は ascend です。
<mt:SubFolders sort_by="label" sort_order="descend"> </mt:SubFolders>
このブロックタグ内で、MTFolderNext タグ、および MTFolderPrevious タグを利用した場合は、sort_by で指定した順番で、前と次のフォルダを表示します。
- sort_method="sub_foo"
-
Perl のメソッド名を使って並び替えます。