0

这是我当前的同上调用,它在模板变量中仅选择了 west 时有效(模板变量是一个复选框)。选择多个复选框时,我需要使其工作。

[[Ditto? &parents=`5` &depth=`1` &tpl=`map_person` &orderBy=`lastname ASC` &filter=`district,West`]]
4

1 回答 1

1

&filter 应该使用 field,criteria,mode 所以如果它只适用于那些有 West 检查过的人,你应该这样写:

&filter=`West,2,1|East,1,1|South,1,1|North,1,1`

所以它说:选择一个文件,检查西,东不检查,南不检查,北不检查。

您还可以创建一个片段来执行此操作并遍历 parent=5 的子代,并回显一个带有所有子代 ID 的逗号分隔列表,并将它们放在 &documents 参数中。像这样的东西:

[[Ditto? &documents=`[!FindExclusive? &district=`West` &parentid=`5`!]`]]

在 Snippet-code 中,您可以编写如下内容(此处仅为伪代码):

$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 的以逗号分隔的文档列表。您可以对东、北和南使用相同的代码段。

于 2011-11-24T09:29:08.580 回答