Come creare i blocchi Cms di Magento 2

Come creare i blocchi Cms di Magento 2

Cosa sono i blocchi Cms?

I blocchi Cms altro non sono che delle parti di layout da integrare nell’e-commerce. Questi blocchi possono essere costituiti da del codice html, da immagini, da semplice testo ecc.

Come si creano o modificano?

Per poterli creare o modificare bisogna andare in admin, nel menu Content => (Elements) Blocks

A questo punto atterriamo sulla griglia e possiamo scegliere di creare un nuovo blocco cms cliccando sul pulsante in alto a destra “Add New Block

Oppure dalla griglia clicando nella colonna “Action” il pulsante “Select” => “Edit“, andando a cliccare invece “Delete” andremmo ovviamente ad eliminare il nostro Blocco

Ovviamente queste azioni possono essere svolte anche in maniera massiva, usando le checkbox poste a sinistra in griglia per selezionare i blocchi che ci interessano, poi scegliendo l’azione da fare tramite il menu a tendina “Action” posto in alto a sinistra sulla griglia.

A questo punto ci troviamo dentro il crea/modifica blocco, dove troviamo la possibilità di abilitare/disabilitare il blocco. Il titolo che vogliamo scegliere e l’identifier che è molto importante in quanto sarà da usare quando vogliamo integrare il blocco (si consiglia di non usare caratteri speciali/spazzi). Per finire troviamo la possibilità di attivarlo solo per determinate store view e il page builder per inserire il contenuto del nostro blocco.

Come si integrano nel front-end?

Esistono diversi modi per poter integrare i blocchi nel front-end, ad esempio lo possiamo fare attraverso il richiamo del codice php:

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

tramite xml nel layout su tema del sito o sul modulo riguardante la parte di front-end:

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

Oppure attraverso una pagina cms (vedi articolo Come creare pagine Cms su Magento 2), inserendo nel codice html del pagebuilder il seguente codice:

{{widget type="Magento\Cms\Block\Widget\Block" template="widget/static_block/default.phtml" block_id="1"}}

Oppure ancora tramite widget, associando il cms block al widget (vedi articolo Come creare Widget su Magento 2)

Sono un web developer Freelance (programmatore web) in grado di offrire servizi di consulenza su diverse tipologie di progetti.
Dopo 6 anni di lavoro come dipendente in diverse agenzie di comunicazione, dal 2016 ho deciso di investire soldi e tempo nel mio sogno di diventare libero professionista.