2015-09-17 8 views
11

私はmagento 2テーマを作成しています。 カスタムブロックをcmsホームページに表示したい。Magento 2にスタティックブロックを表示する方法は?

私は、CMSのページの内容は、私がどのように行うことができます

、PHTMLとxmlレイアウトの静的なブロックを表示するために知りたいですか?

+0

静的ブロックをphtmlとxmlレイアウト、cmsページの内容で表示することを知りたいと思います。 – John

答えて

31

以下のコードを使用してください。 CMSコンテンツに

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

::XMLファイルに

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

:PHTMLファイルで

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

Magento 2.0.2の使用。テスト目的のために、私は上記のxmlを製品ページ "カスタムレイアウトアップデート"に挿入し、 'app/design/frontend/Magento///Magento_Catalog/templates/product/view/detailsにPHPブロックを提供しました.phtm'。私はまだこのブロックを見ることができません。私は何か悪いことをしましたか? – crashtestxxx

1

上記ホームページのためさらに、xmlファイル、正しいですMagento_Cmsフォルダ内にあるcms_index_index.xmlです(これはあなた自身のパッケージに入れてくださいemeフォルダではなく、Magento/blankまたはapp/codeではなく)。

このファイルの<body>タグの中に上記のxmlコードを入れてください。キャッシュ設定に応じて、調整を見るためにクリアする必要があります。

0

は、CMSのページに静的なブロックを表示するために、次のコードを使用していない -

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

はPHTMLファイルに静的なブロックを表示するために、次のコードを使用 -

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

置くためのこれらの作品のどれもdefault.xml経由の静的ブロック適切な例を送ってください。 2.0.7で私がテーマに適用するときには、管理者がsocialimg/socialimgという名前の管理ブロックにブロック識別子として静的ブロックを作成した後、何も表示されません。メモリ内でさえも。 exception.logまたはsystem.logの検索さえありません

<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd"> 
    <body> 
     <referenceContainer name="header.panel"> 
      <block class="Magento\Framework\View\Element\Html\Links" name="header.links"> 
       <arguments> 
        <argument name="css_class" xsi:type="string">header links</argument> 
       </arguments> 
      </block> 
     </referenceContainer> 
<referenceBlock name="socialimg1"> 
    <block class="Magento\Cms\Block\Block" name="socialimg"> 
     <arguments> 
      <argument name="block_id" xsi:type="string">socialimg</argument> 
     </arguments> 
    </block> 
</referenceBlock> 
     <referenceBlock name="logo"> 
      <arguments> 
       <argument name="logo_img_width" xsi:type="number">148</argument> 
       <argument name="logo_img_height" xsi:type="number">43</argument> 
      </arguments> 
     </referenceBlock> 
     <referenceContainer name="footer"> 
      <block class="Magento\Store\Block\Switcher" name="store_switcher" as="store_switcher" after="footer_links" template="switch/stores.phtml"/> 
     </referenceContainer> 
     <referenceBlock name="report.bugs" remove="true"/> 
     <move element="copyright" destination="before.body.end"/> 
    </body> 
</page> 
関連する問題