タグランクN以上のタグのみをリスト化する
タグランクN以上のタグのみをリスト化するコードサンプルです。タグランクは、数値が小さいほうがランクが高い(使用頻度が多い)です。
Nの部分は先頭付近にPickLank変数を宣言してあり、サンプルコードでは4としています。ハッシュのキー(CurTagWeightandID)生成時にタグのIDを付与しているのは、ランクの同じタグがあると一度生成したキーが上書きされてしまうためです。
「ランクN以上の」というMTIf分岐を行うため、CurTagWeightというタグのランクをデータに持つ変数も用いています。
コード
<MTSetVar name="PickLank" value="4">
<MTSetVar name="TagData" value="">
<MTTags>
<MTSetvarBlock name="CurTagWeight"><MTTagRank></MTSetvarBlock>
<MTSetvarBlock name="CurTagWeightandID"><MTTagRank zero_pad="4"><MTTagID></MTSetvarBlock>
<MTSetvarBlock name="CurTagLinkSet"><MTTagCount>:<MTTagRank zero_pad="4">:<MTTagName></MTSetvarBlock>
<MTIf name="CurTagWeight" le="$PickLank">
<MTSetHashVar name="TagData">
<MTSetVar name="$CurTagWeightandID" value="$CurTagLinkSet">
</MTSetHashVar>
</MTIf>
</MTTags>
<ul>
<MTLoop name="TagData" sort_by="key">
<li><MTGetVar name="__value__"></li>
</MTLoop>
</ul>
このエントリにサンプルコードを貼った動作サンプル
- 121:0001:Sample
- 55:0002:Template
- 21:0003:Category
- 23:0003:Asset
- 22:0003:Config
- 12:0004:info
- 8:0004:Trouble
- 11:0004:Feed
- 7:0004:Navigation
- 8:0004:Tag
- 16:0004:Variable
- 16:0004:MTSetVar
- 10:0004:MTIf
- 8:0004:SetVar
- 14:0004:Entry
- 9:0004:op
- 13:0004:Calc
- 12:0004:Example
- 8:0004:Page
- 10:0004:Modifier
- 16:0004:XHTML
- 8:0004:XAMPP
- 10:0004:CSS
- 10:0004:CORESERVER
- 7:0004:Install
- 13:0004:UpGrade
- ページ先頭へ
- 前のエントリ: タグをランク順に並べ替える
- 次のエントリ: タグをアルファベット順に並び替える
- カテゴリ:タグ関連サンプル