我有一个花絮维基,里面有多个角色扮演游戏笔记。每个花絮都标有其各自的游戏名称和类别(例如"城市"或"NPC"(。
现在我想创建一个目录,例如,列出一个游戏的 NPC。我想用toc
来做.
我当前的代码是这样的:
<div class="tc-table-of-contents">
<<toc 'NPC'>>
</div>
但是,这给了我所有 NPC。如何添加另一个标签作为筛选条件?
可能为时已晚,无法帮助您,但对于遇到此问题的其他任何人,toc
宏的sort
参数可以包含一个或多个任意过滤器步骤,因此您可以执行以下操作:
<div class="tc-table-of-contents">
<<toc 'NPC' sort:"tag[SecondTag]">>
</div>
有关toc
及其同级选项的完整说明,请参阅目录宏。
如果您希望过滤器将多个条件匹配在一起,您可以说,例如,tag[one]tag[two]
.但是,OR 条件实际上并不适合在这里工作,因为您需要运行多个筛选器才能在筛选器中执行 OR 条件,而sort
命令只需要筛选器步骤。
这是一个似乎适用于 5.1.23 的 OR 条件的黑客:
<div class="tc-table-of-contents">
<<toc 'TableOfContents' sort:"tag[one]][all[shadows+tiddlers]tag<__tag__>!has[draft.of]tag[two]">>
</div>
但是,这本质上是对toc
宏进行注入攻击,因此如果我是您,我不会相信它会继续工作。如果您需要这么复杂的东西,您可能最好自己使用$list
或三个小部件来装配一些东西,而不是尝试使用toc
宏。