Вы должны выполнить небольшой трюк, удалить дочерний блок и добавить его в новое положение:
<reference name="parent.block.name">
<action method="unsetChild">
<alias>child_block_alias</alias>
</action>
<action method="insert">
<blockName>child.block.name</blockName>
<siblingName>name_of_block</siblingName>
<after>1</after>
<alias>child_block_alias</alias>
</action>
</reference>
Этот шаблон инструкции XML делает то, что вы хотите. Посмотрите на эту короткую ссылку параметров для insert
метода:
blockName
Вашего блок уникального имя по компоновке, product.view
например
siblingName
является блок уникального имени, которое уже существует в вставках целевого блока, используемый для позиционирования вашего блока. Оставьте пустым, чтобы отобразить его вверху или внизу.
after
является логическим идентификатором положения блока. Если равен 1
, то блок будет добавлен после siblingName
или в нижней части списка детей, если siblingName
пуст
alias
это псевдоним вашего блока, если он пуст, будет использовано имя блока.
Некоторые примеры:
Переместить корзину боковой панели блока после того, как недавно просмотренных товаров
<reference name="right">
<action method="unsetChild">
<alias>cart_sidebar</alias>
</action>
<action method="insert">
<blockName>cart_sidebar</blockName>
<siblingName>right.reports.product.viewed</siblingName>
<after>1</after>
</action>
</reference>
Переместить корзину боковой панели блока до недавно просмотренных товаров
<reference name="right">
<action method="unsetChild">
<alias>cart_sidebar</alias>
</action>
<action method="insert">
<blockName>cart_sidebar</blockName>
<siblingName>right.reports.product.viewed</siblingName>
<after>0</after>
</action>
</reference>
Переместить корзину боковой панели блока в конце правого блока
<reference name="right">
<action method="unsetChild">
<alias>cart_sidebar</alias>
</action>
<action method="insert">
<blockName>cart_sidebar</blockName>
<siblingName></siblingName>
<after>1</after>
</action>
</reference>
Переместить корзину боковой панели блока в верхней части левого блока
<reference name="right">
<action method="unsetChild">
<alias>cart_sidebar</alias>
</action>
</reference>
<reference name="left">
<action method="insert">
<blockName>cart_sidebar</blockName>
</action>
</reference>
Наслаждайтесь работой с Magento!
Хотя я знаю, что имя аргументов действия не имеют никакого отношения, вы использовали s/subling/родственный/г в течение :) – Nick 2010-12-11 22:27:42