ModX getResources - tpl中的块显示父内容

时间:2013-11-14 17:17:24

标签: modx getresource

我有这个getResourcesCall

[[!getResources? &tpl= {GRTpl {1}} 1 &includeContent= 1 &includeTVs= [[* ID]] &parents=

在GRTpl中,我包含]]个标签,但它们只显示父级的内容,而不是子级的内容。是什么赋予了!?

更新

我在GRTpl中使用ModX输出过滤器。所以我有一个单选列表框,根据选择显示块。这是GRTpl:

[[+content]]

2 个答案:

答案 0 :(得分:0)

所以我找到了解决方案。在GRTpl中,我将var传递给每个块:

[[+tv.section_type:eq=`Type One`:then=`[[$Type One Chunk? &content=`[[+content]]` ]]` ]]

[[+tv.section_type:eq=`Type Two`:then=`[[$Type Two Chunk? &content=`[[+content]]` ]]` ]]

[[+tv.section_type:eq=`Type Three`:then=`[[$Type Three Chunk? &content=`[[+content]]` ]]` ]]

[[+tv.section_type:eq=`Type Four`:then=`[[$Type Four Chunk? &content=`[[+content]]` ]]` ]]`

然后在块[[+ content]]中显示子资源的内容。

答案 1 :(得分:0)

上面使用的方法会导致大量额外处理和较慢的网站。

两个选项:

1)阅读Jason Coward关于条件语的优秀文章。

基本问题是上面显示的代码会被MODX扩展和处理,即使它不符合条件。

所以而不是:

  

[[*字段:是= 0:然后= [[!SomeScript]]:否则= [[$SomeChunk]]]]

使用:

  

[[[[*字段:是= 0:然后= !SomeScript:否则= $SomeChunk]]]]

有关详细信息,请参阅http://modx.com/blog/2012/09/14/tags-as-the-result-or-how-conditionals-are-like-mosquitoes/

2)为了进一步增强,请将getResources替换为pdoResources并使用其出色的条件模板,这意味着您根本不需要使用条件语。

使用pdoResources,您可以执行以下操作:

[[!pdoResources? & includeTVs = section_type& tplCondition = section_type & conditionalTpls =`{“Type One”:“Type One Chunk”,“Type Two”:“Type Two Chunk”} 等等。

Google“modx pdotools”用于文档。

使用这种方法,我加快了电视加载的getResources调用的速度,速度提高了8倍。

请参阅http://forums.modx.com/thread/90995/performance-question-with-getresources