这是我当前的同上调用,只有在模板变量中选择了west时才有效(模板变量是一个复选框)。当选择多个复选框时,我需要让它工作。
[[Ditto? &parents=`5` &depth=`1` &tpl=`map_person` &orderBy=`lastname ASC` &filter=`district,West`]]
答案 0 :(得分:1)
&过滤器应该使用字段,条件,模式,所以如果它只适用于那些已经检查过West的人,你应该这样写:
&filter=`West,2,1|East,1,1|South,1,1|North,1,1`
所以它是这样的:选择一个文件,检查West是否已经过东方检查,而且未检查南方并且未检查过North。
您还可以创建一个执行此操作的代码段并通过parent = 5的子代,并回显一个包含所有子ID的逗号分隔列表,并将它们放在& documents参数中。像这样:
[[Ditto? &documents=`[!FindExclusive? &district=`West` &parentid=`5`!]`]]
在Snippet代码中你可以写这样的东西(这里只有伪代码):
$children = get all children from $parentid;
$documents = new Array();
foreach $children['id']{
Get the checkboxes from this child
Check if only the $district checkbox is checked
if it is true then fill inn the id in $documents-array
}
echo implode(',',$documents);
这将生成一个仅包含West检查的文档的逗号分隔列表。你可以在东,北,南使用相同的代码片段。