Magento 2: вызов статического блока с использованием xml

20

Как включить статический блок на странице с использованием XML. Например, я создал статический блок с идентификатором промо. В magento 1 мы включаем статический блок, используя код ниже

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

Я хочу сделать то же самое в magento 2

Шахир Али
источник
вы можете следить за этим blog.belvg.com/…
matinict

Ответы:

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

Это эквивалентно M1.

Канди
источник
@ Ben-Space48, согласен
KAndy
32

Правильные инструкции xml для текущей версии Magento2 должны быть:

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

Надеюсь это поможет!

Валерио Маскиотта
источник
13

Попробуйте код ниже.

Звонок из Phtml файла:

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

Звоните со страницы или блока cms:

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

Вызов из 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>

Надеюсь, это поможет вам!

Маквана Кетан
источник
5

Звонок из Xml File сработал. Измените block_identifier из блока CMS, созданного на инструментальной панели magento, и добавьте его в 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>
Бхану Гупта
источник
3

Попробуйте код ниже:

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

Это работает для меня! Надеюсь, что это помогает!

trusha
источник
этот код работает и для меня
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>

Вот имя daily_dealsмоего блока CMS. Я хотел бы, чтобы это работало ..

Давал Мистри
источник
1

статический блок Над изображением вы можете увидеть мой идентификатор блока = "product_view_right_sidebar". добавьте приведенный ниже код в ваш 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>
Никунь Панчал
источник