2011-05-19 51 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