Magento 2嵌套块

11

我正在将Magento 1.x迁移到Magento 2。

我创建了default.xml文件以自定义现有布局。

我的情况是,我有一个名为“main-header”的div,我想在其中嵌套一个名为“menu”的div。

现在,我知道块可以有模板。因此,我尝试创建嵌套块结构(不知道在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="Mymodule\Test\Block\Header" template="header/top_header.phtml">
                <block name="header.menu" class="Mymodule\Test\Block\Menu" template="header/menu.phtml"/>
            </block>
        </container>
    </referenceContainer>
在top_header.phtml文件中,我试图调用:
<?php $block->getChildHtml('header.menu'); ?>

我知道上面的陈述是我从Magento 1.x中引用的

2个回答

11

愚蠢的错误,我漏掉了echo:

<?php echo $block->getChildHtml('header.menu'); ?>

0
创建嵌套容器即可,这样应该可以正常工作,您可以添加任何类并使用任何标签进行包装。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接