我的问题如下。我目前正在制作一个带有get-page、get-resources、form-it和wayfinder的博客页面。这个问题需要相当多的Modx和snippit知识。我已经有了页码和所有的工作,并且我已经有了一个包含所有调用的模板页面(名为weblogTemplate)。此模板中包含以下寻路器调用:
[[!getResources? &parents=`5` &limit=`5` &tpl=`blogPost`]]
[[!getPage?
&elementClass=`modSnippet`
&element=`getResources`
&parents=`4`
&depth=`2`
&limit=`5`
&pageNavOuterTpl=`[[+first]][[+prev]][[+pages]][[+next]][[+last]]`
&pageVarKey=`page`
&pageFirstTpl=`<li class="controlFirst"><a[[+classes]][[+title]] href="[[+href]]">Eerste pagina</a></li>`
&pageLastTpl=`<li class="controlLast"><a[[+classes]][[+title]] href="[[+href]]">Laatste pagina</a></li>`
&pagePrevTpl=`<li class="controlPrev"><a[[+classes]][[+title]] href="[[+href]]"><<</a></li>`
&pageNextTpl=`<li class="controlNext"><a[[+classes]][[+title]] href="[[+href]]">>></a></li>`
&includeTVs=`1`
&includeContent=`1`
&tpl=`blogListPost`
]]如您所见,父页面的id设置为5,这对主页来说很好,但博客页面中连接的任何子页面也使用相同的模板,因此也会有与父页面相同的菜单。你可以使用一个修复来简单地为一个页面创建一个模板,并继续使用不同的getResource调用,但请记住,这是一个正在创建的博客,不断有新的页面添加。用户不能(甚至不会理解)创建模板和编辑任何代码。我想到的一个解决方案是将父id设置为动态的,这样它就可以根据当前所在的页面进行调整。例如,如果页面id号为12,它会将父调用设置为12,从而显示id号为12的所有内容。如果有人有任何想法/想法/解决方案,我将不胜感激。
(a link about wayfinder that i used.)
发布于 2013-05-01 19:47:15
这对我很有效:
[[!getPage?
&elementClass=`modSnippet`
&element=`getResources`
&parents=`[[*id]]`
&depth=`0`
&limit=`10`
&pageNavOuterTpl=`[[+first]][[+prev]][[+pages]][[+next]][[+last]]`
&pageVarKey=`page`
&pageFirstTpl=`<li class="controlFirst"><a[[+classes]][[+title]] href="[[+href]]">Eerste pagina</a></li>`
&pageLastTpl=`<li class="controlLast"><a[[+classes]][[+title]] href="[[+href]]">Laatste pagina</a></li>`
&pagePrevTpl=`<li class="controlPrev"><a[[+classes]][[+title]] href="[[+href]]"><<</a></li>`
&pageNextTpl=`<li class="controlNext"><a[[+classes]][[+title]] href="[[+href]]">>></a></li>`
&includeTVs=`1`
&includeContent=`1`
&tpl=`blogListPost`
]]感谢Vasis提供的帮助。
发布于 2013-04-29 18:47:08
最好的解决方案是使用两个模板-一个用于主页面,一个用于博客页面,并在博客模板中使用:
&parents=`[[*id]]`用户的问题可以通过在系统设置中设置default_template来解决。
https://stackoverflow.com/questions/16272640
复制相似问题