Magento 2'deki bir sayfada sol kenar çubuğunda statik blok nasıl çağrılır


11

Bir sayfada Magento 2'de statik bir bloğu nasıl çağırabiliriz. Magento 1'de bunu aşağıdaki kodla sahibiz:

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

Yanıtlar:


51

Sayfada statik engelleme çağırmak istiyorsanız

Aşağıdaki kodu deneyin:

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

Phtml dosyasında aramak istiyorsanız:

Aşağıdaki kodu deneyin:

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

Xml dosya kodunuz şöyle olmalıdır:

<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>

Sonunda cms sayfasındaki bloğunuzla phtml'yi aramak istiyorsanız:

Aşağıdaki kodu deneyin:

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

Daha fazla ayrıntı için bu bağlantıya bakın - https://chetansanghani.wordpress.com/2015/11/20/magento2-display-static-block-in-phtml-file-cms-page/


Yanıt için teşekkürler, bir sayfada ne denesem şu hatayı alıyorum: "Lütfen XML verilerini düzeltin ve tekrar deneyin. Öğe 'düzen': İçerik türü 'yalnızca öğe' olduğu için boşluk dışındaki karakter içeriğine izin verilmiyor Hat: 1 "Bir fikrin var mı?
Coen

@Coen check xml dosyanızda fazladan boşluk var mı? veya xml dosyasının başında?
Manthan Dave

evet virgül vardı, şimdi cevabı başka bir yerde buldum. Yukarıdaki soruma bakın
Coen

@Coen cevabı güncelledi lütfen kontrol edin
Manthan Dave

Teşekkürler, xml dosyasındaki dosyayı ve bunu bir cms sayfasıyla kullanır
Coen

8

Bu çalışmalı:

<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>

Bu xml'i nereye koymalıyım?
Witalo Benicio

0

statik Blok Resmin üstünde benim blok tanımlayıcı = "product_view_right_sidebar" görebilirsiniz.

Yalnızca blok tanımlayıcınızla değiştirmeniz gerekir ...

burada, blok tanımlayıcı = "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>
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.