Comment appeler un bloc statique dans la barre latérale gauche d'une page dans Magento 2


11

Comment pouvons-nous appeler un bloc statique dans Magento 2 dans une page. Dans Magento 1, nous avons ceci avec le code suivant:

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

Réponses:


51

Si vous voulez appeler un bloc statique dans la page

Essayez le code ci-dessous:

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

Si vous souhaitez appeler dans un fichier phtml:

Essayez le code ci-dessous:

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

Le code de votre fichier xml doit être:

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

Enfin si vous voulez appeler phtml avec votre page block in cms:

Essayez le code ci-dessous:

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

Reportez-vous à ce lien pour plus de détails - https://chetansanghani.wordpress.com/2015/11/20/magento2-display-static-block-in-phtml-file-cms-page/


Merci pour la réponse, tout ce que j'essaie dans une page, j'obtiens l'erreur suivante: "Veuillez corriger les données XML et réessayer. Élément 'mise en page': Le contenu de caractère autre que les espaces blancs n'est pas autorisé car le type de contenu est" élément uniquement " . Ligne: 1 "Une idée?
Coen

@Coen vérifie s'il y a de l'espace supplémentaire dans votre fichier xml? ou au début du fichier xml?
Manthan Dave

oui il y avait une virgule, j'ai maintenant trouvé ailleurs la réponse. Voir ma question ci
Coen

@Coen a mis à jour la réponse, veuillez vérifier
Manthan Dave

Merci, utilise celui du fichier xml et celui par une page cms
Coen

8

Cela devrait fonctionner:

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

Où dois-je mettre ce xml?
Witalo Benicio

0

Bloc statique Au-dessus de l'image, vous pouvez voir mon identifiant de bloc = "product_view_right_sidebar".

Vous devez seulement remplacer par votre identifiant de bloc ...

ici, mon identifiant de bloc = "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>
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.