Modulo personalizzato Prestashop: scaffold

Modulo personalizzato Prestashop: scaffold

Creare un modulo Prestashop personalizzato e' la via maestra per estendere il negozio senza toccare il core. Un modulo ben fatto convive con upgrade, e' pulito da disinstallare e si integra con hook. Vediamo lo scaffold base di un modulo per Prestashop 8.

Struttura cartelle minima

Un modulo vive in modules/nomemodulo/. La struttura base e': nomemodulo.php (file principale), config.xml auto-generato, logo.png, cartella views/ per template e asset, controllers/ per controller front e admin, translations/ per lingue, upgrade/ per script di upgrade tra versioni. Il file principale estende la classe Module.

File principale del modulo

Nel file nomemodulo.php definisci name (deve corrispondere al filename), version, author, displayName, description e dependencies. Implementa install() che chiama parent::install() e registerHook per gli hook usati. Implementa uninstall() simmetrico. Aggiungi getContent() per pagina di configurazione admin.

Procedura passo-passo

  1. Crea cartella modules/nomemodulo/.
  2. Crea file nomemodulo.php con classe NomeModulo extends Module.
  3. Imposta property name, tab, version, author.
  4. Implementa __construct con displayName e description.
  5. Implementa install() con registerHook necessari (es. displayHeader, actionProductSave).
  6. Implementa uninstall() e rimuovi i dati creati.
  7. Aggiungi logo.png 32x32 nella root del modulo.
  8. Crea getContent() per la pagina di configurazione backoffice.
  9. Installa il modulo via Module Manager.
  10. Testa l'hook con un dump nel metodo handler.

Errori comuni e come risolverli

  • Modulo non visibile: nome classe diverso da nome cartella o filename.
  • Hook non triggera: registerHook mancato in install o nome hook errato.
  • Errore install: SQL custom fallisce; usa try/catch e log dettagliato.
  • Crash dopo upgrade Prestashop: deprecated method; verifica changelog API.

Domande frequenti

D: Posso pubblicare su Addons?
R: Sì, dopo validation review di Prestashop.

D: Modulo deve avere licenza?
R: Sì, inserisci AFL 3.0 nel file principale.

D: Servono test automatici?
R: Consigliati con PHPUnit; obbligatori per marketplace.

Hai bisogno di aiuto?

Se vuoi un Prestashop performante curato dal team di G Tech Group, scrivici tramite il modulo di contatto.

Hai trovato utile quest'articolo?