2011-05-19 95 views
1

我一直在寻找周围的一些指南,能告诉我如何使现有的菜单编辑在混凝土5如何在Concrete5中编辑菜单?

这里添加时是我现在使用的菜单,我想能够编辑它在C5:

<div class="menu"> 
    <ul> 
     <li><a href="default.php" class="active"><span>Hem</span></a></li> 
     <li><a href="about.php"><span>Om oss</span></a></li> 
     <li><a href="services.php"><span>Tjänster</span></a></li> 
     <li><a href="references.php"><span>Referenser</span></a></li> 
     <li><a href="contact.php"><span> Kontakt</span></a></li> 
    </ul> 
    </div> 

的联系不C5在所有的工作,因此,如果有人可以帮助我一点,将不胜感激!

谢谢!

回答

1

对使用​​任何CMS的好的好处是,它会自动创建的导航菜单为您服务 - 这样,当用户添加新的页面会自动显示在菜单了。

在Concrete5具体而言,这样做的方法是使用“AutoNav”块。正如任何块,它可以被添加到您的区域页面上,但因为通常需要在导航菜单出现在同一个地方的每一页上,您也可以直接在你的模板代码添加块。

因此,对于你的菜单(这是一个没有下拉列表中选择一个级菜单),使用此代码替换您的导航菜单的html:

<?php 
$nav = BlockType::getByHandle('autonav'); 
$nav->controller->orderBy = 'display_asc'; 
$nav->controller->displayPages = 'top'; 
$nav->controller->displaySubPages = 'none'; 
$nav->render('templates/header_menu'); 
?> 

现在你需要做出改变你的CSS,因为该代码会生成HTML比你有什么略有不同 - 它看起来更像是这样的:

<ul class="nav-header"> 
    <li><a href="/" class="nav-selected">Hem</a></li> 
    <li><a href="/about">Om oss</a></li> 
    <li><a href="/services">Tjänster</a></li> 
    <li><a href="/references">Referenser</a></li> 
    <li><a href="/contact">Kontakt</a></li> 
</ul> 

的区别是,有没有周围的div(尽管你可以离开,如果你被周围的PHP通缉上面的代码在开始和结束div标签),没有s平移导航项目,选定项目的类别是“导航选定”而不是“当前”。

+0

这是一个非常有用的答案,但我在哪里可以添加/编辑控制菜单的CSS。它并不是我想要的,我也不能以“间距”或“额外的CSS”编辑它。那么我在哪里可以找到header_menu的css规则?或者我可以自己添加一个模板?怎么样? – MstrQKN 2011-05-20 11:26:02

+0

只需将它放在主题的样式表中即可。如果你从市场上下载了一个主题,它在packages/theme_themename/theme/themename /(可能叫做“main.css”,但也许是别的)。如果是内置的主题,它的混凝土/主题/默认/ main.css的[为“酸奶”的主题]或混凝土/主题/ greensalad/main.css的或混凝土/主题/ dark_chocolate/main.css的之一 – 2011-05-22 06:20:31