Moduli Spedizione e Pagamento: Confronto Evolutivo

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!

Caratteristica  Prima (v1.3.9) Dopo (v1.5.8 / v2.1.0+)
Architettura I file dovevano risiedere nelle cartelle core (`includes/modules/shipping` o `payment`) Encapsulated Plugin (EP): I file possono ora essere isolati nella cartella `zc_plugins`, senza sporcare le directory core
Clonazione Richiedeva la copia manuale dei file e la modifica di tutte le definizioni interne per evitare conflitti Sistemi di Hook: Grazie al sistema Observer/Notifier, è possibile estendere le funzionalità di un modulo esistente senza doverlo clonare o hackerare
Validazione La gestione degli errori di configurazione era spesso lasciata all’esperienza del negoziante get_configuration_errors: Dalla v1.5.8, i moduli supportano questa funzione per segnalare errori di setup direttamente nel pannello admin
Sicurezza Carte Si usava dividere il numero di carta tra database ed email (manual processing) PCI Compliance: Il trattamento manuale dei dati delle carte è proibito; è obbligatorio l’uso di gateway sicuri e certificati SSL
Controllo Versioni Nessun controllo integrato sulla compatibilità del modulo con la versione di Zen Cart File Manifest: Ogni plugin moderno ha un file `manifest.php` che dichiara esplicitamente le versioni compatibili (`zcVersions`), prevenendo crash di sistema

Novità rilevanti da segnalare

Plugin Manager

Dalla v1.5.7/1.5.8 è disponibile una pagina dedicata in Moduli -> Plugin Manager per installare, disinstallare, abilitare o disabilitare i plugin in modo centralizzato.

Autenticazione a due fattori (2FA)

Introdotta nella v2.1.0 per proteggere l’accesso all’Admin, un salto enorme rispetto alla semplice password del 2017.

Sanificazione delle Richieste

I nuovi standard impongono l’implementazione della Admin Request Sanitization per convalidare ogni dato in ingresso nel pannello, riducendo i rischi di iniezione SQL

Transito Dati

Mentre prima il cURL era un’opzione per alcuni moduli, oggi è un requisito fondamentale compilato in PHP con OpenSSL per quasi tutte le comunicazioni esterne.