これは私の現在の同上呼び出しであり、テンプレート変数で west のみが選択されている場合に機能します (テンプレート変数はチェックボックスです)。複数のチェックボックスが選択されているときにこれを機能させる必要があります。
[[Ditto? &parents=`5` &depth=`1` &tpl=`map_person` &orderBy=`lastname ASC` &filter=`district,West`]]
&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`!]`]]
スニペットコードでは、次のようなものを書くことができます (ここでは疑似コードのみ):
$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 のみがチェックされたドキュメントのコンマ区切りリストが生成されます。また、東、北、南に同じスニペットを使用できます。