在我的Magento安裝中,我有一個下拉菜單,它是從我的'Categories'中的Products類別生成的。 它使用代碼: <?php echo $this->getChildHtml('topMenu') ?>
來顯示菜單。在Magento中添加靜態鏈接到頂部導航菜單
但是,在一定的時間間隔內,我想添加一個靜態HTML鏈接(帶有超鏈接的列表項)到菜單中。
我該如何做到這一點?
任何指針
在我的Magento安裝中,我有一個下拉菜單,它是從我的'Categories'中的Products類別生成的。 它使用代碼: <?php echo $this->getChildHtml('topMenu') ?>
來顯示菜單。在Magento中添加靜態鏈接到頂部導航菜單
但是,在一定的時間間隔內,我想添加一個靜態HTML鏈接(帶有超鏈接的列表項)到菜單中。
我該如何做到這一點?
任何指針
如何添加Magento的頂部菜單的超鏈接的標題標籤 打開文件,並查找代碼
$的HTML =「的getURL ()。 '''。$ outermostClassCode。'>' 。$ this-> escapeHtml($ child-> getName())。'';
app/code/core/Mage/Page/Block/Html/Topmenu。 php
$ html。='getUrl()。'「'。 $ outermostClassCode。 'title ='' 。$ this-> escapeHtml($ child-> getName())。'「>' 。 $ this-> escapeHtml($ child-> getName())。 '';
你可以試試這個方法。我認爲這種方式比其他方式更合適。
http://www.atwix.com/magento/how-to-add-a-new-item-to-the-navigation-menu/
雖然這個鏈接可能回答這個問題,但最好在這裏包含答案的基本部分,並提供參考鏈接。如果鏈接頁面更改,則僅鏈接答案可能會失效。 – fancyPants 2014-07-24 08:33:00
感謝您的評論@fancyPants。我會更新我的答案。 – 2014-07-24 09:38:33
有幾個方法可以做到這一點,你可以重寫Mage_Catalog_Block_Navigation實現這一目標。
裏面的renderCategoriesMenuHtml功能,你可以在一個櫃檯foreach循環內的各個位置捕獲它並呈現塊:
if ($j == 1) {
$html .= $this->getLayout()->createBlock('namespace/yourmodule')->setTemplate('topMenu/link.phtml')->toHtml();
}
或者字面上呈現像這樣的鏈接:
$html .= '<a href="yourlink.php">Link Name</a>';
第一種方法爲前端開發人員提供了更多的靈活性,而不是在課堂上對其進行硬編碼。
你也可以通過這種方法實現一些嚴肅的操作,比如添加圖像到菜單中,我使用類似的東西來實現菜單中的「精選產品」功能。
在當前版本的Magento的,你可以通過創建一個新的類別,然後重定向該類別你想要的任何URL(CMS頁面,產品頁面,離線等)
您現在應該能夠去前端並在菜單中看到新的類別。點擊它將直接轉到您提供的鏈接。我比其他人更喜歡這種方法,因爲它可以更好地控制靜態鏈接的放置位置,並允許您在子菜單中放置靜態鏈接的菜單項。
這段視頻展示了Magento Go的分步技術,但這個過程對於所有Magento風格都是一樣的。 http://www.youtube.com/watch?v=5rSIQlRC8Xk
對SEO來說是不錯的選擇?我的意思是說,你將有2個不同的鏈接在指向同一頁面的網站地圖中... – WonderLand 2014-05-02 12:26:52
是的,對於seo不是很好 – 2014-11-13 15:19:47
很高興知道...我絕對不會使用Magento。 – 2015-08-25 14:10:12
您可以使用自定義鏈接在top.menu
內創建塊。在你的主題local.xml
文件補充一點:
<reference name="header">
<reference name="top.menu">
<block type="page/template_links" name="top.menu.custom-links">
<action method="addLink" translate="label title">
<label>New Link</label>
<url>my-url</url>
<title>New Link</title>
<prepare>true</prepare>
<urlParams helper="core/url/getHomeUrl"/>
<position>60</position>
</action>
</block>
</reference>
</reference>
我覺得這是最簡單的方法。
問題是關於頂部導航而不是top.menu鏈接 – aimiliano 2016-10-26 14:49:34
雖然這可能在理論上回答這個問題,但[這將是更可取的](http://meta.stackexchange.com/q/8259)在這裏包含答案的重要部分,並提供供參考的鏈接。 – 2013-01-27 15:29:25
該頁面不再存在... – Howli 2015-07-27 11:45:56
浪費完美的答案 – Impulss 2015-07-28 01:23:53