2015-09-17 14 views
11

Sto creando un tema Magento 2. Voglio visualizzare i blocchi personalizzati nella homepage di cms.Come mostrare i blocchi statici in Magento 2?

voglio sapere per mostrare i blocchi statici in phtml e layout XML, CMS contenuto della pagina

Come posso fare?

+0

Voglio sapere mostrare i blocchi statici nel layout phtml e xml, il contenuto della pagina cms. – John

risposta

31

Si prega di provare ad utilizzare sotto i codici.

In phtml File:

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

in CMS Content:

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

in XML File:

<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

Uso di Magento 2.0.2. A scopo di test, ho inserito il file xml nella pagina del prodotto "Custom Layout Update" e ho fornito il blocco php all'app/design/frontend/Magento///Magento_Catalog/templates/product/view/details .phtm'. Non riesco ancora a vedere questo blocco. Ho fatto qualcosa di sbagliato? – crashtestxxx

1

Quanto sopra è corretto, inoltre, il file xml per la homepage è cms_index_index.xml all'interno della cartella Magento_Cms (e questo dovrebbe andare nel tuo pacchetto/th cartella eme, non in Magento/blank o app/code).

Basta inserire il codice xml sopra nel tag <body> in quel file, a seconda delle impostazioni della cache potrebbe essere necessario cancellarle per vedere le regolazioni.

0

Utilizzare il seguente codice per visualizzare il blocco statico a pagina CMS -

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

Utilizzare il seguente codice per visualizzare il blocco statico nel file di phtml -

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

nessuno di questi lavori per la messa blocchi statici tramite default.xml Si prega di rimandare esempi appropriati. In 2.0.7 Quando applico al mio tema il seguente dopo aver creato un blocco statico in amministrazione chiamato socialimg/socialimg come identificatore di blocco, nulla si presenta. nemmeno nella memoria. nemmeno una ricerca di exception.log o 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> 
Problemi correlati