Cara memanggil blok statis di bilah sisi kiri di halaman di Magento 2

11

Bagaimana kita dapat memanggil blok statis di Magento 2 di halaman. Di Magento 1 kami memiliki ini dengan kode berikut:

<reference name="left">
<block type="cms/block" name="Klantenservice menu" before="-">
    <action method="setBlockId"><block_id>cmsmenu</block_id></action>
</block>    
</reference>
Coen
sumber

Jawaban:

51

Jika Anda ingin memanggil blok statis di halaman

Coba kode di bawah ini:

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

Jika Anda ingin memanggil file phtml:

Coba kode di bawah ini:

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

Kode file xml Anda harus:

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

Terakhir, jika Anda ingin memanggil phtml dengan blok Anda di halaman cms:

Coba kode di bawah ini:

{{block class="Magento\Modulename\Block\Blockname" template="Magento_Modulename::templatefilename.phtml"}} 

Rujuk tautan ini untuk detail lebih lanjut - https://chetansanghani.wordpress.com/2015/11/20/magento2-display-static-block-in-phtml-file-cms-page/

Manthan Dave
sumber
Terima kasih atas jawabannya, apa pun yang saya coba di halaman saya mendapatkan kesalahan berikut: "Harap perbaiki data XML dan coba lagi. Elemen 'tata letak': Konten karakter selain spasi tidak diizinkan karena jenis kontennya adalah 'elemen-saja' Baris: 1 "Ada ide?
Coen
@Coen check apakah ada ruang ekstra di file xml Anda? atau di awal file xml?
Manthan Dave
ya ada koma, saya sekarang menemukan jawabannya di tempat lain. Lihat pertanyaan saya di atas
Coen
@Coen memperbarui jawabannya, silakan cek
Manthan Dave
Terima kasih, gunakan yang ada di file xml dan halaman satu per satu
Coen
8

Ini seharusnya bekerja:

<referenceContainer name="sidebar.additional">
   <block class="Magento\Cms\Block\Block" name="yourblockid">
       <arguments>
            <argument name="block_id" xsi:type="string">yourblockid</argument>
       </arguments>
   </block>
</referenceContainer>
Arunendra
sumber
Di mana saya harus meletakkan xml ini?
Witalo Benicio
0

Blok statis Di atas gambar, Anda dapat melihat pengidentifikasi blokir saya = "product_view_right_sidebar".

Anda hanya perlu mengganti dengan pengidentifikasi blok Anda ...

di sini, pengenal blokir saya = "product_view_right_sidebar" == "Your_block_identifier"

<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>
Nikunj Panchal
sumber