Php PyroCMS主题自定义导航结构

Php PyroCMS主题自定义导航结构,php,twig,pyrocms,Php,Twig,Pyrocms,我到处都找遍了,但似乎在文档或其他任何地方都找不到任何东西。我已经创建了自己的自定义主题,从PyroCMS附带的初学者主题复制粘贴内容。在my navigation partial中,有以下细枝指令: {{ structure() .linkAttributesDropdown({'data-toggle': 'dropdown'}) .listClass('nav navbar-nav navbar-right') .ch

我到处都找遍了,但似乎在文档或其他任何地方都找不到任何东西。我已经创建了自己的自定义主题,从PyroCMS附带的初学者主题复制粘贴内容。在my navigation partial中,有以下细枝指令:

{{ structure()
            .linkAttributesDropdown({'data-toggle': 'dropdown'})
            .listClass('nav navbar-nav navbar-right')
            .childListClass('dropdown-menu')
            .render()|raw }}
这在使用引导框架时有效。我正在使用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()、listClass()等的文档


提前谢谢

以下是一些信息:

最基本的默认设置如下所示,它将创建一个包含所有现有页面的无序列表。如果已将页面设置/切换为未启用,则不会显示该页面

{{structure()| raw}}

更改列表元素的类别
{{structure().list_class('navigation')|raw}

将列表标记更改为非无序列表:
{{structure().list_标记('dl')|raw}

更改列表元素

{{structure().link_标记('dt')|raw}

仅显示特定页面的子级

{{structure().root('/my page')|raw}}
或页面id
{{structure().root('9')|raw}

为具有子元素的元素设置类

{{structure().dropdown_class('has-children')|raw}

为每个li项目设置一个类:

{{structure().item_class('has-children')|raw}

为链接设置一个类

{{structure().link_class('my-class')|raw}

向链接添加标题属性


{{structure().link_attributes({'title':'title attribute'}){raw}

不幸的是,系统的这一部分仍在开发中,但我可以向您展示宏以及如何与它交互:

您看到的链接是如何设置选项,以便
structure()。fooBar(value)
将选项集合中的
fooBar
选项设置为
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 }}

我也刚刚更新了pages文档:
{{ 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 }}