Magento 2: appeler un bloc statique en utilisant xml

20

Comment j'inclus un bloc statique dans une page en utilisant xml. Par exemple, j'ai créé un bloc statique avec l'identifiant promo. Dans magento 1, nous incluons un bloc statique en utilisant le code ci-dessous

     <block type="cms/block" name="Promo">
          <action method="setBlockId"><block_id>promo</block_id></action>
     </block> 

Je veux faire exactement la même chose dans Magento 2

Shaheer Ali
la source
vous pouvez suivre ce blog.belvg.com/…
matinict

Réponses:

49
<block class="Magento\Cms\Block\Block" name="Promo">
    <arguments>
        <argument name="block_id" xsi:type="string">promo</argument>
    </arguments>
</block>

Cela équivaut à M1.

KAndy
la source
@ Ben-Space48, d'accord
KAndy
32

Les instructions xml correctes pour la version actuelle de Magento2 doivent être:

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

J'espère que cela t'aides!

Valerio Masciotta
la source
13

Essayez le code ci-dessous.

Appel depuis un fichier Phtml:

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

Appel depuis la page ou le bloc cms:

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

Appel depuis un fichier Xml:

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

J'espère que cela vous aide!

Makwana Ketan
la source
5

L'appel du fichier Xml a fonctionné. Modifiez le "block_identifier" du bloc CMS créé sur le tableau de bord magento et ajoutez-le à layout.xml

<referenceContainer name="footer">
       <block class="Magento\Cms\Block\Block" name="block_identifier">
            <arguments>
                <argument name="block_id" xsi:type="string">block_identifier</argument>
            </arguments>
        </block>
    </referenceContainer>
Bhanu Gupta
la source
3

Essayez le code ci-dessous:

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

Cela fonctionne pour moi! J'espère que cela vous aidera!

trusha
la source
ce code fonctionne aussi pour moi
Amol Bhandari SJ
1
 <referenceContainer name="content">
      <block class="Magento\Cms\Block\Block" name="daily_deals" template="bigbazaar.phtml">
        <arguments>
            <argument name="block_id" xsi:type="string">daily_deals</argument>
        </arguments>
    </block>
 </referenceContainer>

Voici daily_dealsle nom de mon identifiant de bloc CMS. Je souhaite que cela fonctionne ..

Dhaval Mistry
la source
1

Bloc statique Au-dessus de l'image, vous pouvez voir mon identifiant de bloc = "product_view_right_sidebar". ajoutez le code ci-dessous à votre fichier xml

<referenceContainer name="content">
    <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>
Nikunj Panchal
la source