Поместите основную навигацию в содержимое домашней страницы вертикально
Я только что разработал веб-сайт для клиента, и мне нужна ваша помощь с основной навигацией Magento. Просто чтобы уточнить, я имею в виду меню навигации, в котором после добавления отображаются категории 1-го уровня, которые расположены горизонтально в заголовочном файле, а не в верхних ссылках.
Мне нужно переместить эту навигацию в div в содержимом домашней страницы, если это возможно. Я не могу использовать для этого левую боковую панель, потому что основное содержимое будет размещено под навигацией, а также на остальной части страницы. Как бы я делаю это?
Я могу возиться с CSS, чтобы поместить его в вертикальный список, но сначала нужно просто перейти к основному контенту!
Спасибо
2 answers
Я бы предложил использовать unsetChild
и insert
вместо remove
, а затем снова создать блок. Как ни странно, unsetChild использует псевдоним блока, установленный через as
, но insert использует имя блока.
<default>
<reference name="header">
<action method="unsetChild"><name>topMenu</name></action>
</reference>
<reference name="content">
<action method="insert"><name>top.menu</name></action>
</reference>
</default>
Использование вставки также дает вам больше возможностей в отношении позиционирования блока и т. Д., Поскольку вы можете передать еще несколько параметров.
public function insert($block, $siblingName = '', $after = false, $alias = '')
ПРИМЕЧАНИЕ: основные функции, которые вы можете использовать с помощью xml-макета, можно найти в Mage_Core_Block_Abstract
Использование вашего макета local.xml , вы хотите сделать что-то вроде этого:
<default>
<reference name="header">
<remove name="top.menu" />
</reference>
<reference name="left">
<block type="core/text_list" name="left.menu" before="-" translate="label">
<label>Navigation Bar</label>
<block type="page/html_topmenu" name="catalog.topnav" template="page/html/topmenu.phtml"/>
</block>
</reference>
Удалите блок top.menu из заголовка и добавьте его слева. Конечно, он может перейти в основной, если вы не хотите использовать левый. Код - это всего лишь пример того, как это можно сделать, - он не предназначен для точной копии и вставки.
Код с моей правкой сработал для меня: