php - PyroCMS主题自定义导航结构

标签 php twig pyrocms

我到处搜索,但似乎在文档或其他地方找不到任何内容。我创建了自己的自定义主题,从 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/

相关文章:

php - Symfony2 Twig 安全策略

php - 带标点符号的长描述的 MySQL 类型是什么?

php - 如何根据之前的 URL 加载不同的样式表

symfony - 带 Twig 的自定义表单字段模板

forms - Symfony2 形式 : Money Currency Symbol and Displaying in Twig

php - 如何在仪表板中加载模块的变量

php - 停止远程服务器 PHP 上的无限循环

php - cron php如何停止附加到文件的标题

php - API-错误 202 "Your credentials do not allow access to this resource"

codeigniter - 哪个 CMS 会更好地在 CI 的不同页面中加载不同的模板?