首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GetResource,动态父级。

GetResource,动态父级。
EN

Stack Overflow用户
提问于 2013-04-29 14:41:05
回答 2查看 329关注 0票数 0

我的问题如下。我目前正在制作一个带有get-page、get-resources、form-it和wayfinder的博客页面。这个问题需要相当多的Modx和snippit知识。我已经有了页码和所有的工作,并且我已经有了一个包含所有调用的模板页面(名为weblogTemplate)。此模板中包含以下寻路器调用:

代码语言:javascript
复制
[[!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]]">&lt;&lt;</a></li>`
             &pageNextTpl=`<li class="controlNext"><a[[+classes]][[+title]] href="[[+href]]">&gt;&gt;</a></li>`

             &includeTVs=`1`
             &includeContent=`1`

             &tpl=`blogListPost`
          ]]

如您所见,父页面的id设置为5,这对主页来说很好,但博客页面中连接的任何子页面也使用相同的模板,因此也会有与父页面相同的菜单。你可以使用一个修复来简单地为一个页面创建一个模板,并继续使用不同的getResource调用,但请记住,这是一个正在创建的博客,不断有新的页面添加。用户不能(甚至不会理解)创建模板和编辑任何代码。我想到的一个解决方案是将父id设置为动态的,这样它就可以根据当前所在的页面进行调整。例如,如果页面id号为12,它会将父调用设置为12,从而显示id号为12的所有内容。如果有人有任何想法/想法/解决方案,我将不胜感激。

(a link about wayfinder that i used.)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-01 19:47:15

这对我很有效:

代码语言:javascript
复制
[[!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]]">&lt;&lt;</a></li>`
                 &pageNextTpl=`<li class="controlNext"><a[[+classes]][[+title]] href="[[+href]]">&gt;&gt;</a></li>`

                 &includeTVs=`1`
                 &includeContent=`1`

                 &tpl=`blogListPost`
              ]]

感谢Vasis提供的帮助。

票数 0
EN

Stack Overflow用户

发布于 2013-04-29 18:47:08

最好的解决方案是使用两个模板-一个用于主页面,一个用于博客页面,并在博客模板中使用:

代码语言:javascript
复制
&parents=`[[*id]]`

用户的问题可以通过在系统设置中设置default_template来解决。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16272640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档