Home > tmpl > mtVicuna simple のウェブページ一覧ウィジェットで除外したいフォルダのあるときは

mtVicuna simple のウェブページ一覧ウィジェットで除外したいフォルダのあるときは

  • Posted by: maRk
  • tmpl

mt.Vicuna simple にある、ウェブページ一覧を表示するウィジェットで一部のフォルダを除外してフォルダリストを表示させるひとつの方法です

この件はおそらく Movable Type からフォルダを作成しなければ、そのフォルダはフォルダまわりのテンプレートタグが認識できないので、そのような運用をするほうがセオリーぽいですが、細かなツッコミはこの際なかったことにして、とりあえずどうしたら指定したフォルダを一覧で表示しないように出来るか、というのをやっていきます。

mt.Vicuna simple のページ一覧ウィジェットでは、MTPages によるウェブページリストと、MTTopLevelFolders による、フォルダリストで構成されています。

今回カスタマイズをおこなうのが、MTTopLevelFoldersによるループの部分ということになります。

フィルタリングされていないフォルダーリスト

上のキャプチャ中のリンクが入ってない部分を取り除きたい、というわけです。

ウィジェットテンプレート中の、

 <li class="page page-<$MTPageID$>">

よりも先のループの部分にフィルタをかける必要があります。

フォルダラベルを評価してフィルタリングしたいので、トップレベルフォルダーから、cur_folder に変数セットしている箇所以下に次のタグを追加します。

		<MTTopLevelFolders>
			<MTFolderLabel setvar="cur_folder" /><MTSetVar name="folder_index_id" value="" /><MTSetVar name="folder_page_count" value="0" />
                    <mt:Unless name="cur_folder" like="^(aaa|bbb|ccc)">

aaa、bbb、cccはそれぞれフォルダラベルを指します。除外したい分だけlikeモディファイアに書き加え、各フォルダラベルは | でつなぎます。

MTUnlessの終了タグは、ul 要素の終了タグの前で MTTopLevelFolders 内にする必要がありますので、以下の場所になります。

    </MTPages>
    </li>
    <$MTSubFolderRecurse$></mt:Unless>
</MTTopLevelFolders>

Comments:0

コメントする

Trackbacks:0

Home > tmpl > mtVicuna simple のウェブページ一覧ウィジェットで除外したいフォルダのあるときは

Search

Feeds

Return to page top