我到处搜索,但似乎在文档或其他地方找不到任何内容。我创建了自己的自定义主题,从 PyroCMS 附带的 Starter 主题中复制粘贴内容。在我的导航部分中有这个 Twig 指令:
{{ structure()
.linkAttributesDropdown({'data-toggle': 'dropdown'})
.listClass('nav navbar-nav navbar-right')
.childListClass('dropdown-menu')
.render()|raw }}
这在使用 Bootstrap 框架时有效。我正在使用 Purecss.io,我想分配不同的类并将类分配给更多元素。我的导航应如下所示:
<ul class="pure-menu-list">
<li class="pure-menu-item pure-menu-selected">
<a href="http://local.dev" class="pure-menu-link" >Home</a>
</li>
<li class="pure-menu-item pure-menu-has-children pure-menu-allow-hover">
<a href="http://local.dev/products" class="pure-menu-link">Item with children</a>
<ul class="pure-menu-children">
<li class="pure-menu-item">
<a href="http://local.dev/products/child1" class="pure-menu-link">Child 1</a>
</li>
<li class="pure-menu-item">
<a href="http://local.dev/products/chil2" class="pure-menu-link">Child 2</a>
</li>
</ul>
</li>
</ul>
我在我的部分中尝试了以下操作:
{{ structure()
.linkAttributesDropdown({'class': 'pure-menu-item pure-menu-has-children pure-menu-allow-hover'})
.listClass('pure-menu-list')
.elementClass('pure-menu-item')
.childListClass('pure-menu-children')
.render() }}
但这并不能解决问题。
我该如何实现这个目标?在哪里可以找到所使用的函数 Structure()、listClass() 等的文档?
提前致谢!
最佳答案
不幸的是,系统的这一部分仍在开发中,但我可以向您展示宏以及如何与其交互:
https://github.com/anomalylabs/pages-module/blob/master/resources/views/macro.twig
您看到的链接是如何设置选项的,因此struct().fooBar(value)
将foo_bar
选项设置为value
在选项集合中。
对于elementClass
,您可能正在寻找linkClass
。另外不要忘记使用 |raw
进行转义!
看起来这将为您提供所需的标记:
{{ structure()
.currentClass('pure-menu-selected')
.dropdownClass('pure-menu-has-children pure-menu-allow-hover')
.linkAttributesDropdown({'class': 'pure-menu-item pure-menu-has-children pure-menu-allow-hover'})
.listClass('pure-menu-list')
.itemClass('pure-menu-item')
.linkClass('pure-menu-link')
.childListClass('pure-menu-children')
.render()|raw }}
关于php - PyroCMS主题自定义导航结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40827734/