1

我正在尝试使用getResources为我的网站构建主导航。我如何告诉getResources从当前上下文开始并立即查看当前上下文下的所有资源?

我看到我可以指定以下参数;

  1. 父母
  2. 资源

我已经设置了父母0,但这不起作用。我不知道id上下文的资源,所以我不能为资源参数指定它。

我不能做我想做的事getResources吗?我错过了什么?

4

4 回答 4

1

在http://rtfm.modx.com/display/ADDON/Wayfinder上构建导航,他有一个参数来处理上下文。

于 2013-03-29T04:49:21.430 回答
0

使用 &context,来自 rtfm.modx.com 上的文档“应该在哪个上下文中搜索。默认为当前上下文。”

所以你的最小 getResources 调用可能看起来像:

[[getResources? &parents=0 &tpl=menuTpl ]]

您不必指定上下文,而且 getResources 是服务器资源密集型的,除非您有特定的理由不这样做,否则请按照 Vasis 的建议使用寻路器。

于 2013-03-29T17:05:35.767 回答
0

我知道这有点晚了,但我只是想出了这个,测试并在 Revo 2.2.10 上工作

您告诉 getResources 从当前上下文开始的方式是将父级设置为当前文档的 ID。

这将进入您的模板:

<ul>
    [[getResources? &parents=`0` &depth=`0` &limit=`0` &sortby=`menuindex` &sortdir=`ASC` &tpl=`tpl_Navigation`]]
</ul>

然后在用作getResources(tpl_Navigation)模板的Chunk中:

<li>
    <a href="[[~[[+id]]]]">[[+menutitle:default=`[[+pagetitle]]`]]</a>

   [[getResources? &parents=`[[+id]]` &depth=`0` &totalVar=`numChildren[[+id]]` &limit=`0` &tpl=`tpl_Navigation` &sortby=`menuindex` &sortdir=`ASC` &toPlaceholder=`children[[+id]]`]]

   [[+numChildren[[+id]]:gt=`0`:then=`<ul>[[+children[[+id]]]]</ul>`:else=``]]
</li>
于 2013-10-23T13:41:14.013 回答
0

如果要使用 getResource 从当前上下文顶部生成菜单,还需要添加&depth=`0` &context=`[[*context_key]]`参数。

但是对于 modx 中的简单菜单生成,我建议您使用安装了 getResource 的Wayfinder插件。

于 2017-03-15T14:30:17.873 回答