【问题标题】:In Magento2 How to add block in layout xml file在 Magento2 如何在布局 xml 文件中添加块
【发布时间】:2016-08-13 07:44:43
【问题描述】:

我想在我的网站最顶部提供优惠按钮。为此,我想创建 phtml 文件并想在 magento2 布局 xml 文件中调用它。请告诉我如何在 magento2 中实现这一点?

【问题讨论】:

    标签: magento2


    【解决方案1】:

    Magento 2 在 XML 文件中调用“cms 块”:

    <block class="Magento\Cms\Block\Block" name="block_name">
      <arguments>
        <argument name="block_id" xsi:type="string">block_identifier</argument>
      </arguments>
    </block>
    

    Magento 2 在 Phtml 文件中调用“cms 块”:

    <?php echo $block->getLayout()->createBlock('Magento\Cms\Block\Block')->setBlockId('block_identifier')->toHtml();?>
    

    Magento 2 在 CMS 内容中调用“cms 块”:

    {{block class="Magento\\Cms\\Block\\Block" block_id="block_identifier"}}
    

    一切正常……

    【讨论】:

      【解决方案2】:

      试试这个:所有布局和模板文件都应该放在 View 文件夹中

      <layout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/layout_generic.xsd">
      <container name="root" label="Root">
          <block class="Namespace\Module\Block\Adminhtml\Edit\Tab\View\XYZ" name="module.edit.tab.xyz" template="Namespace_Module::/template_path/abc.phtml"/>
      </container>
      </layout>
      

      【讨论】:

        【解决方案3】:

        您只需替换为您的区块标识符...

        这是我的块标识符 = "product_view_right_sidebar" == “你的块标识符”

        <referenceContainer name="sidebar.additional">
            <block class="Magento\Cms\Block\Block" name="product_view_right_sidebar">
                <arguments>
                        <argument name="block_id" xsi:type="string">product_view_right_sidebar</argument>
                </arguments>
            </block>
        </referenceContainer>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2013-02-08
          • 2014-10-17
          • 2012-12-04
          • 1970-01-01
          • 2019-04-04
          • 2021-03-28
          • 1970-01-01
          相关资源
          最近更新 更多