Quando si tratta di siti di eCommerce creati con Magento i blocchi statici custom si possono rivelare un potente strumento per personalizzare le pagine del CMS. E’ importante quindi saperli inserire, ordinare e rimuovere nelle pagine. Per poter modificare un Blocco Statico in un pagina bisogna andare su “CMS>Pagine” quindi selezionare la pagina che c’interessa ed andare sulla linguetta “Design“. Poniamo di aver selezionato il Layout “2 colonne con barra laterale sinistra” e vogliamo inserire nella barra a sinistra il nostro blocco. In “Layout aggiornamento XML” andremo ad aggiungere il seguente codice. Attraverso il primo tag “reference” specifichiamo la regione della pagina nella quale stiamo lavorando, nel nostro caso nella colonna di sinistra il cui name è “left“.

[xml highlight=”1,3”]

<reference name="left">

</reference>
[/xml]

Quindi con il secondo tag “block” specifichiamo che tipo di blocco vogliamo inserire e il suo nome, nel nostro caso è un blocco del CMS quindi il type sarà “cms/block“.

[xml highlight=”1”]

 <block type="cms/block" name="block-name"> 

[/xml]

Infine con l’ultima coppia di tag “action” e “block_id“, indichiamo che il blocco deve essere aggiunto e specifichiamo quale blocco attraverso il suo id univoco.

[xml highlight=”1”]

 <action method="setBlockId"><block_id>block-id</block_id></action> 

[/xml]

Così il blocco viene inserito dopo tutti i blocchi presenti. Per decidere dove posizionarlo dobbiamo includere le proprietà di posizione “before” or “after” all’interno del tag “block“.

  • before=”-“ posizionerà il blocco per primo
  • after=”-“ posizionerà il blocco per ultimo
  • before=”block-id” posizionerà il blocco prima di un altro blocco specificato tramite il suo id
  • after=”block-id” posizionerà il blocco dopo di un altro blocco specificato tramite il suo id

Quindi, se per esempio volessimo inserire il nostro blocco per primo il nostro codice risulterebbe simile a questo:

[xml highlight=”1,3,5″]
<reference name="left">
<block type="cms/block" name="adv-sidebar">
<action method="setBlockId"><block_id>adv-sitebar</block_id></action>
</block>
</reference>
[/xml]

Per eliminare un blocco utilizziamo la coppia di tag action e nam, in questo caso con action impostato a “unsetChild” come in questo esempio
[xml highlight=”1″]
<action method="unsetChild"><name>block-name</name></action>
[/xml]
Nel nostro caso il codice completo risulterà come questo
[xml highlight=”2″]
<reference name="left">
<action method="unsetChild"><name>left.newsletter</name></action>
</reference>
[/xml]