Magento2: ReferenceContainer और ReferenceBlock के बीच क्या अंतर है


23

Magento2 में लेआउट में दोनों referenceBlockऔर referenceContainerसंस्थाओं का उपयोग किया जाता है।
उनके बीच मुख्य अंतर क्या है और मैं इन संस्थाओं को magento1 से कैसे संबंधित कर सकता हूं। *।

जवाबों:


38

मूल रूप से कंटेनर core/text_listमैगनेटो में ब्लॉक के बराबर हैं ।
"दार्शनिक रूप से" वे एक ही काम करते हैं, एकमात्र अंतर यह है कि containersपूर्वनिर्धारित ब्लॉक हैं जो केवल अन्य चाइल्ड ब्लॉक का समर्थन करते हैं।
कुछ उदाहरण हैं content, after.body.start, header-wrapper
आप उदाहरण के लिए सभी परिभाषित कंटेनरों को देख सकते हैं Magento/Theme/view/base/page_layout/*

यहाँ से एक उदाहरण है 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>

मूल रूप से जो परिभाषित <container name="..." />किया गया है, उसके द्वारा पहुँचा जा सकता है referenceContainer। क्या घोषित किया <block .... />जा सकता हैreferenceBlock

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.