Twig

I vantaggi di un codice pulito grazie alla collaborazione tra Magento e Twig

Recentemente, mi sono imbattuto in un post, di qualche mese fa, in cui si parlava della possibile collaborazione tra Magento e Twig.
Collaborazione confermata leggendo alcune note di rilascio riportate nel repository Magento2 GitHub.

Le note riportavano quanto segue:
– introdotto il supporto per i template Twig;
– incluse estensioni e filtri Twig specifici per Magento.

Per chi ancora non lo conoscesse, Twig è un motore template facile, moderno, sicuro e flessibile per PHP, sviluppato da  Fabien Potencier, creatore del più famoso framework Symfony rilasciato sotto la nuova licenza BSD.
Le componenti di Twig sono davvero interessanti, completamente estendibili ed implementabili:

  • gestione avanzata del flusso di controllo
  • escape automatico del codice prodotto in output
  • possibilità di ereditare i template
  • possibilità di applicare filtri alla variabili disponibili nel template
  • supporto multilingua integrato (i18n)

Nel post si racconta come molti sviluppatori ancora oggi, nel 2013, considerino un motore di template dedicato come un peso inutile, dal momento che il PHP stesso lo è.
Se utilizziamo Magento 1.x e i suoi template phtml scritti in php, infarciti di codice HTML, tutto sembra funzionare. In realtà, se uno sviluppatore decide di inserire centinaia di linee di logica di business all’interno dei file phtml, tutto diventa un mucchio di codice duplicato, difficile da gestire e terribilmente ostico da implementare.
Il supporto di Twig per la scrittura dei template è quindi vantaggioso e permetterà a Magento 2 di avere estensioni di terze parti più pulite, sperando quindi di non trovare più oggetti e logiche di business scritti all’interno dei superati file .phtml.

fonti:
https://inchoo.net/ecommerce/magento/magento-2-and-twig/
https://github.com/magento/magento2/blob/master/CHANGELOG.markdown
https://en.wikipedia.org/wiki/Twig_%28template_engine%29
https://twig.sensiolabs.org/

Scritto da Marco Chinchio

Altri articoli dal blog

Cominciamo un progetto insieme?

Chiama lo 049 71 98 93 oppure compila il form qui sotto