Beide referenceBlock
und referenceContainer
Entities werden in magento2 im Layout verwendet.
Was ist der Hauptunterschied zwischen ihnen und wie kann ich diese Entitäten mit magento1. * In Beziehung setzen.
quelle
Beide referenceBlock
und referenceContainer
Entities werden in magento2 im Layout verwendet.
Was ist der Hauptunterschied zwischen ihnen und wie kann ich diese Entitäten mit magento1. * In Beziehung setzen.
core/text_list
im grunde sind container gleichbedeutend mit den blöcken in magento 1.
"philosophisch" funktionieren sie gleich, der einzige unterschied besteht darin, dass containers
vordefinierte blöcke nur andere untergeordnete blöcke unterstützen.
Einige Beispiele sind content
, after.body.start
, header-wrapper
.
Sie können alle definierten Container zum Beispiel in der sehen Magento/Theme/view/base/page_layout/*
.
Hier ist ein Beispiel von empty.xml
.
<layout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_layout.xsd">
<container name="root">
<container name="after.body.start" as="after.body.start" before="-" label="Page Top"/>
<container name="page.wrapper" as="page_wrapper" htmlTag="div" htmlClass="page-wrapper">
<container name="global.notices" as="global_notices" before="-"/>
<container name="main.content" htmlTag="main" htmlId="maincontent" htmlClass="page-main">
<container name="columns.top" label="Before Main Columns"/>
<container name="columns" htmlTag="div" htmlClass="columns">
<container name="main" label="Main Content Container" htmlTag="div" htmlClass="column main"/>
</container>
</container>
<container name="page.bottom" as="page_bottom" label="Before Page Footer Container" after="main.content" htmlTag="div" htmlClass="page-bottom"/>
<container name="before.body.end" as="before_body_end" after="-" label="Page Bottom"/>
</container>
</container>
</layout>
Grundsätzlich gilt, was als <container name="..." />
zugänglich definiert ist referenceContainer
. Was als deklariert ist, <block .... />
kann von referenziert werdenreferenceBlock