Il Sistema dei Template: dal “Classic” al Responsive

Bentornato su Zen Cart: con piacere ti accompagniamo in una nuova serie di articoli per affrontare gli aggiornamenti di versione, in particolare dalla lontana 1.3.9 (che è stata la versione base del nostro manuale e sempre in linea con la successiva 1.5.0) con le successive versioni a partire dalla 1.5.8 ad oggi e anche… Domani!

Procediamo con il primo punto:
il passaggio dai vecchi template alla struttura moderna.
E vedremo in maniera semplice il prima e dopo.

Il Sistema dei Template: Dal “Classic” al Responsive

  • Prima (v1.3.9): Ti affidavi al sistema di Over-ride, copiando i file core in cartelle personalizzate (spesso chiamate “classic”) per evitare sovrascritture durante gli aggiornamenti.
    La struttura si basava su tre colonne fisse (sinistra, destra e centrale).
  • Dopo (Versioni Moderne): Lo standard attuale prevede Template Responsive come Bootstrap4 o Responsive Classic e questi sono progettati per adattarsi automaticamente ai dispositivi mobili.
    La creazione di un template moderno segue ancora una logica di sottocartelle (“common”, “css”, “images”, “jscript”, “templates”), ma partendo da una base già flessibile.
Zen Cart 2.1.0 Templates Schema Screenshot

Gestione dei CSS

  • Prima: Le modifiche estetiche avvenivano principalmente nel file “stylesheet.css” o in file CSS specifici per lingua o pagina.
  • Dopo: Con il template Bootstrap4, molte personalizzazioni di colori e interfaccia possono essere gestite direttamente dal Pannello di Amministrazione, rendendo il lavoro meno dipendente dalla modifica manuale del codice.

3. Gestione dei Testi (File di Lingua)

  • Prima: I testi erano gestiti tramite costanti “define()” contenute nei file in “includes/languages/italian/”.
  • Dopo: Dalla versione 1.5.8, Zen Cart è passato a file di lingua basati su array PHP. Questo è un cambiamento architetturale importante: mentre il vecchio metodo “define()” è ancora supportato per compatibilità, il nuovo standard è più performante e strutturato.

Questo un primo confronto tra la logica “manuale” del 2017 e quella “strutturata” di oggi dove la personalizzazione non passa solo dai file, ma spesso avviene direttamente dal Pannello di Amministrazione, specialmente per i colori e il layout di base. Inoltre, i file di lingua moderni (dalla v1.5.8) sono basati su array PHP, un salto tecnologico rispetto alle vecchie definizioni define() del 2017.


Sovrascritture per il Pannello di Amministrazione

NOTA: questo parte riguarda le sovrascritture (overrides) specifiche solo ed esclusivamente per il Pannello di Amministrazione perché a partire da Zen Cart 1.5.8, abbiamo questa interessante novità e la possibilità di diverse personalizzazioni avviene grazie all’utilizzo di un file chiamato
admin/includes/extra_datafiles/dist-site_specific_admin_overrides.php
per controllare varie opzioni (minori) esclusivamente appunto della parte dell’amministrazione.

Si procede semplicemente duplicando questo file presente nella cartella e levando la parte “dist-

admin/includes/extra_datafiles/site_specific_admin_overrides.php

e personalizzalo a piacere aprendolo con un editore e seguendo quanto spiegato nei commenti.

Zen Cart site specific override

Molti comportamenti possono essere abilitati o disabilitati con questo file, esempio:

  • Indicare se la pagina del gestore download deve mostrare la data del file
  • Modificare la visualizzazione degli ordini per le immagini, la visualizzazione delle tasse, ecc.
  • Mostrare le immagini dei prodotti/impostazioni sulle buste di imballaggio/fatture
  • Visualizzare i dati degli attributi nel popup degli ordini del Dashboard
  • Numero di righe da visualizzare nel Dashboard degli ordini
  • Mostrare il popup della Visualizzazione Rapida nell’elenco degli ordini
  • Mostrare i dati degli attributi nel popup della Visualizzazione Rapida nell’elenco degli ordini
  • Mostrare la colonna Zona nell’elenco degli ordini
  • Mostrare la colonna IP di registrazione del cliente nell’elenco dei clienti
  • (sviluppatori) decidere se abilitare il debug sulla classe zcDate.
  • (sviluppatori) decidere se caricare il Font Awesome v4 shim per una retro compatibilità.

Consultare il file stesso per specifiche e dettagli.

Sovrascritture del CSS Pannello di Amministrazione

Sempre a partire da Zen Cart 1.5.8a, è inoltre fornito un file chiamato
admin/includes/css/dist-site-specific-styles.php

Anche in questo caso duplicare il file presente nella cartella e levare l’iniziale parte “dist-” in

admin/includes/css/site-specific-styles.php

e personalizzare a piacere.

Zen Cart dist site specific CSS styles