MODx Wayfinder& level = 2排除ALL而不是一个

时间:2016-08-20 13:25:24

标签: modx modx-revolution modx-evolution wayfinder

我正在尝试编写一个Wayfinder调用级别2,它排除了除了一个2级doc(id = 39)之外的所有2级文档(因此必须包含所有1级文档)。如何实现?

[[Wayfinder? &startId=`0` &level=`2` excludeDocs=`3,4,5,6,7,8,9` &outerTpl=`menu`]]

我能想到的最好的方法是列出要排除的所有2级文档,而不是非常简洁的解决方案。也试过使用PHx但没有成功。

3 个答案:

答案 0 :(得分:0)

您可以通过为其提供特定模板并使用'其中'来包含单一级别资源。参数:

[[Wayfinder? &startId=`0` &level=`2` &where=`{"template:IN":[1,2,3]}` &outerTpl=`menu`]]

您还必须为要包含的其他资源添加模板ID。

答案 1 :(得分:0)

我能看到的其他方式只有2个探路者呼叫,一个用于顶级,一个用于二级,并使用& includeDocs。

<强> Stucture:

-Resource 1
-Resource 2
    -Resource 3
    -Resource 4
-Resource 5
    -Resource 39 (just inc this resource)
-Resource 7

等级1:

[[Wayfinder?
&startId=`0`
&level=`1`
&outerTpl=`menu`]]

第二级:

[[Wayfinder?
&startId=`2,5`
&level=`1`
&includeDocs=`39`
&outerTpl=`menu`]]

答案 2 :(得分:0)

要从Wayfinder(或getResources)中排除整个目录的内容并保持在自动菜单构建意图的自然边界内,请考虑使用Weblink资源作为要隐藏其子项的父目录的代理,然后只需从菜单中隐藏实际的父目录。

  1. 将您要隐藏其子级的父目录标记为 &#34;隐藏菜单&#34;
  2. 创建一个返回该父目录的Weblink资源,并将其显示为返回该目录的代理
  3. 实际的父目录仍然很好而且整洁。其中的任何一个孩子(甚至是新的孩子)仍然有条理和整洁,并且#34;代理&#34; weblink是一种在菜单中表达它的方式。