"Sono stato bocciato a parecchi esami. Un mio amico invece, li ha passati tutti a pieni voti. Ora è ingegnere e lavora in Microsoft. Io sono il proprietario."  - Bill Gates  •  "Se riesco a fare qualcosa in 10 minuti, è perché ho passato anni a studiarlo."  - Bill Gates  •  "Il vostro lavoro riempirà gran parte della vostra vita, e l'unico modo per essere veramente soddisfatti è fare ciò che ritenete sia un grande lavoro."  - Steve Jobs  •  "Siate affamati. Siate folli."  - Steve Jobs  •  

cinque 

ZERO

PHP

2. Struttura di un addon prestashop

home / php /

Lucio Paolo Asciolla

Senior Full Stack Developer

Struttura concettuale
Prestashop basa la sua struttura architetturale sul modello MVC (Model View Controller) che permette di separare la logica di presentazione dalla logica applicativa.
L'Architettura MVC si basa su 3 componenti:

  • Model: gestisce la logica dell’applicazione (motore)(php) che comprende l’elaborazione e l’accesso ai dati (database, file, etc.). Recuperare, inserire, eliminare e aggiornare le informazioni delle tabelle del database.
  • View: si occupa della visualizzazione (vista a schermo)(output) dei dati dell’applicazione all’utente.
  • Controller: (vigile urbano) gestisce le richieste da parte dell’utente (input nel view) e le azioni che devono essere intraprese sul Model (azioni che deve eseguire il motore).

File e cartelle che compongono un addon prestashop

PERCORSO DEI MODULI
FTP
public_html/modules/nome_modulo/

FILE NECESSARI
File icona.ico
icona del modulo
File config.xml
di configurazione creato automaticamente dal ecommerce engine
File nome_modulo.php
principale (bootstrap) si occuperà del caricamento e della gestione del modulo (deve aver lo stesso nome della cartella del modulo).

CARTELLE NECESSARIE
Cartella Controllers
Sotto cartella Front presenta i controllers necessari per la componente frontend del modulo
Sotto cartella Admin raccoglie i controllers necessari per la sezione di backend (amministrazione)

Cartella Models contiene la classe associata con il controller di amministrazione e, se necessario, tutte le altre classi.

Cartella Views contiene i file templates (cartella strutturale vuota)
Sotto cartella Front template lato frontend
Sotto cartella Admin template lato backend
Sotto cartella Hook temples per gli hook

Solitamente un modulo di Prestashop non contiene solo file .php, ma anche file .js.css ed immagini. Questi file, utilizzati sia nel frontend che nel backend del sito, sono memorizzati nelle relative cartelle.

File / CartellaDettagli
nome-modulo.phpFile principale.
/imgCartella per i file immagine.
/controllersContiene i file controller. Può contenere 2 sottocartelle front e admin.
/cssCartella per i file CSS.
/jsCartella per i file JavaScript.
/viewCartella per i file relativi al template del modulo (.tpl):
/view/template/view/template/admin: sottocartella per i file template utilizzati dal controller lato pannello di amministrazione;/view/template/front: sottocartella per i file template utilizzati dal controller lato front-office./view/template/hook: sottocartella per i file template utilizzati dai vari hook del sito.
/overridePermette di sovrascrivere funzionalità native di Prestashop. Metodologia consigliata in caso di futuri aggiornamenti del framework.
/upgradeCartella per gli aggiornamenti del modulo.
/themes/nome_del_tema/modulesPermette di sovrascrivere funzionalità di un modulo esistente senza intaccare i file originali.
/translationsContiene una sottocartella per ogni lingua disponibile (“it”, “en”, etc.), contenenti a loro volta, le traduzioni del modulo.
config.xmlFile di configurazione creato automaticamente da Prestashop durante l’installazione del modulo.
logo.pngIcona del modulo visualizzata nel backoffice.





File zip strutturale

http://cinquepuntozero.it/nome_modulo.zip