Magento 2 вложенные блоки
Я мигрирую из Magento 1.x в Magento 2
Я создал default.xml-файл для настройки существующего макета.
моя ситуация заключается в том, что у меня есть div с именем "main-header", и я хочу вложенный div внутри него с именем "menu".
теперь, я знаю, что блоки могут иметь шаблоны. Поэтому я попытался создать вложенную блочную структуру (не знаю, действительна ли она в Magento 2):
<referenceContainer name="header.container">
<container name="common-header" label="Header common to all pages" as="common-header" htmlTag="div" htmlClass="main-header">
<block class="MymoduleTestBlockHeader" template="header/top_header.phtml">
<block name="header.menu" class="MymoduleTestBlockMenu" template="header/menu.phtml"/>
</block>
</container>
</referenceContainer>
в top_header.phtml, я пытаюсь позвонить:
<?php $block->getChildHtml('header.menu'); ?>
I знайте приведенное выше утверждение, которое я взял из Magento 1.x
2 ответов
вместо этого создайте вложенные контейнеры, которые должны работать нормально, вы можете добавлять любые классы и использовать любой тег для обертывания.