Come salvare e visualizzare un valore di campo modulo personalizzato utilizzando il gancio PrestaShop
Alla fine di questo blog, avrai una conoscenza approfondita di come creare campi modulo personalizzati in Prestashop, memorizzano i dati nel database e visualizzano queste informazioni nel pannello di amministrazione.

PrestaShop è una solida piattaforma di e-commerce open source progettata per flessibilità e personalizzazione. Consente agli sviluppatori di modificare e migliorare le sue funzionalità principali utilizzando ganci, che sono punti di ingresso predefiniti nel sistema. Questi hook consentono un’integrazione senza soluzione di continuità delle funzionalità personalizzate, assicurando che gli aggiornamenti e la manutenzione del sistema principale rimangano senza problemi. Questo blog fornisce una guida completa per aggiungere, salvare e visualizzare campi personalizzati per i moduli prodotto e cliente in PrestaShop. Alla fine di questo blog, avrai una conoscenza approfondita di come creare campi modulo personalizzati in Prestashop, memorizzano i dati nel database e visualizzano queste informazioni nel pannello di amministrazione.

Passaggio 1: aggiunta di campi personalizzati ai moduli prodotto e cliente-
Il primo passo per personalizzare PrestaShop consiste nell’inserire nuovi campi nei moduli per prodotti e clienti.
Aggiunta di campi personalizzati al modulo del prodotto

Per questo, useremo il displayAdminProdottiExtra hook per aggiungere il campo personalizzato al modulo del prodotto. Questo hook viene attivato ogni volta che un prodotto viene modificato nel pannello di amministrazione.
Panoramica del gancio: Questo hook consente di aggiungere campi o informazioni extra alla pagina di creazione/modifica del prodotto.
Spiegazione del codice:
L’esempio fornito dimostra come recuperare i dati esistenti per un campo personalizzato dal database e visualizzarli nel modulo. L’ID prodotto viene recuperato dinamicamente dal $param, assicurando che i dati visualizzati corrispondano al prodotto in fase di modifica.

Aggiungere campi personalizzati al modulo di registrazione del cliente
Campi di registrazione personalizzati – Prestashop Addons
Aggiunta di campi personalizzati al modulo cliente
Allo stesso modo, il displayAdminClientiForm hook fornisce un punto di ingresso per l’inserimento di campi nel modulo del cliente.
Panoramica del gancio: Questo hook viene attivato durante il rendering del modulo di creazione/modifica del cliente.

Assegnando variabili Smarty, il modello per il campo personalizzato viene integrato perfettamente nell’interfaccia di amministrazione.
Passaggio 2: creazione dei campi del database-
Perché modificare il database?
PrestaShop aderisce a un modello di database relazionale. Aggiungendo colonne personalizzate al ps_prodotto che a ps_cliente tabelle, ti assicuri che i tuoi dati personalizzati rimangano associati al rispettivo prodotto o cliente.
Query SQL:
Gli script SQL forniti mostrano come aggiungere colonne al ps_prodotto che a ps_cliente tabelle. Queste query vengono eseguite una volta per preparare il database all’archiviazione dei valori dei campi personalizzati.
Query SQL per il prodotto:
![]()
Query SQL per il cliente:

Migliori pratiche:
- Assicurarsi di creare un backup del database prima di implementare o procedere con displayAdminProdottiExtra eventuali modifiche allo schema.
- Per evitare confusione, utilizzare nomi di colonna che descrivano chiaramente il loro scopo.
Fase 3: Progettazione dei modelli di modulo personalizzati-
I template svolgono un ruolo fondamentale nell’assicurare che i campi personalizzati si integrino perfettamente nell’interfaccia utente di amministrazione di PrestaShop. Utilizzando Smarty, il motore di creazione template di PrestaShop, puoi progettare moduli user-friendly e reattivi.
Modello di modulo prodotto (custom_product_form.tpl):

Modello modulo cliente (custom_customer_form.tpl):

miglioramenti:
- Aggiungi convalida: usa JavaScript per convalidare l’input dell’utente prima dell’invio.
- Stile: migliora il modulo con le classi CSS per ottenere un aspetto coerente.
Passaggio 4: salvataggio dei valori dei campi personalizzati-
Una volta inviati i campi del modulo, i valori devono essere salvati nel database. Hook di PrestaShop come azioneProdottoSalva che a azioneClienteSalvaDopo consente agli sviluppatori di eseguire una logica personalizzata durante l’operazione di salvataggio.
Salvataggio dei valori dei campi del prodotto

Le azioneProdottoSalva hook assicura che i dati del campo personalizzato vengano salvati quando un prodotto viene salvato/aggiornato:
Salvataggio dei valori dei campi cliente

Le azioneClienteSalvaDopo hook viene utilizzato per salvare i dati dei campi personalizzati del cliente:
Passaggio 5: Visualizzazione dei valori dei campi personalizzati
La visualizzazione dei campi personalizzati comporta il recupero dei valori memorizzati e la loro visualizzazione appropriata nell’interfaccia di amministrazione.
Visualizzazione dei valori dei campi personalizzati del prodotto
Usa lo stesso displayAdminProdottiExtra hook per mostrare il valore del campo personalizzato insieme ad altri dettagli del prodotto. I dati recuperati possono essere visualizzati in un formato di sola lettura o modificabile, a seconda del caso d’uso.
Visualizzazione dei valori dei campi personalizzati del cliente
Allo stesso modo, il displayAdminClientiForm hook recupera e visualizza il valore del campo personalizzato nel modulo del cliente.
Ulteriori suggerimenti per gli sviluppatori
1. Test e debug:
- Utilizza la modalità debug di PrestaShop per identificare i problemi.
- Prova i tuoi campi personalizzati con vari input per garantirne la compatibilità.
2. Scalabilità:
- Se si desidera utilizzare più campi personalizzati, si consiglia di creare una tabella separata per memorizzarli dinamicamente.
- Utilizzare colonne indicizzate per query più rapide.
3. Sicurezza:
- Convalidare e sanificare sempre gli input degli utenti utilizzando pSQL().
- Se necessario, limitare l’accesso a questi campi in base ai ruoli utente.
4. Compatibilità futura:
- Utilizzare esclusivamente hook per evitare di modificare i file core.
- Aggiorna regolarmente il tuo codice per mantenerlo compatibile con le versioni più recenti di PrestaShop.
Conclusione
Aggiungere campi personalizzati ai prodotti in PrestaShop è un modo semplice ma potente per estendere la funzionalità della piattaforma. Seguendo questa guida, puoi assicurarti che le tue personalizzazioni rimangano modulari, manutenibili e compatibili con i futuri aggiornamenti di PrestaShop. Sentiti libero di adattare queste tecniche ad altre aree del tuo negozio PrestaShop e condividi i tuoi risultati nei commenti qui sotto!
- I migliori moduli SEO per PrestaShop: 10 funzionalità indispensabili per migliorare il posizionamento nei motori di ricerca
- Tre email di recupero recuperano il 37% di carrelli in più rispetto a una sola: come costruire la giusta sequenza di recupero carrelli abbandonati in PrestaShop
- Come creare un blog SEO-friendly su PrestaShop: una guida pratica a contenuti, SEO e ricerca basata sull’intelligenza artificiale
- PrestaShop 9.2 Ask AI vs AI Admin Assistant: qual è il migliore per gestire il tuo negozio?
- Integrazione di un gateway di pagamento personalizzato in PrestaShop: requisiti tecnici, flusso API e sfide OPC reali