如何使用ExpressionEngine的Structure附加组件生成多级导航栏?

时间:2012-11-01 18:44:38

标签: structure expressionengine

我正在使用ExpressionEngine和Structure附加组件的最新版本。

我正在寻找一些关于生成4项导航栏的帮助,其中两个项目处于不同的结构级别。

我的结构行如下所示:


服务(父母)

----- 翻译(孩子)

----- 视频(孩子)

Studio (父级)

关于我们(家长)


我的主导航栏应该是:

翻译 - 视频 - 工作室 - 关于我们

正如您所看到的,他们处于不同的水平。即使使用Structure Entries附加组件,我也已经工作了好几个小时,但我找不到生成此导航的方法。

我很感激你能给我的任何帮助。

4 个答案:

答案 0 :(得分:8)

结构最终将其“页面”存储为常规EE条目,因此您只需将条目ID硬编码到频道中:条目循环以获取标题:

<ul>
{exp:channel:entries dynamic="no" entry_id="3|4|6|12" disable="categories|pagination|member_data"}
    <li><a href="{page_uri}">{title}</a></li>
{/exp:channel:entries}
</ul>

或者,如果您想让客户完全控制导航中显示的内容,您可以为“在主要导航上显示”设置自定义复选框字段,然后使用以下内容:

<ul>
{exp:channel:entries dynamic="no" search:options="=show on primary nav?" disable="categories|pagination|member_data"}
    <li><a href="{page_uri}">{title}</a></li>
{/exp:channel:entries}
</ul>

(使用P&amp; T复选框而不是蹩脚的内置复选框会更好一些。)

对于Structure模块没有冒犯,但是这种事情真的会让我使用Nav-EE,或者更常见的是我会选择一个完全硬编码的顶级导航......客户通常认为他们需要完整控制但实际上顶级导航很少会改变(当它有可能时他们还需要你在网站上做其他工作!)。

答案 1 :(得分:5)

您正在寻找结构条目:http://devot-ee.com/add-ons/structure-entries(免费!)

答案 2 :(得分:3)

我设法获得了结构导航的方式,这是一个非常代码:

<ul class="myclass"> 
{exp:structure:nav start_from="/services" include_ul="no"}
{exp:structure:nav exclude="21|4|10" max_depth="1" include_ul="no"}
</ul>

我发现詹姆斯的硬编码解决方案是最佳选择。谢谢!

答案 3 :(得分:0)

由于你已经花了大量时间摆弄结构条目,我会说给分类学一个机会,因为它肯定会很简单地完成工作。 http://devot-ee.com/add-ons/taxonomy

为了管理不适合模具的导航树,Taxonomy模块非常方便灵活。