Good Ideas

Pricing table per temi WordPress: la mia libreria

In questi mesi sto sviluppando in nuovo tema WordPress e mi sono imbattuto nel risolvere il problema delle pricing table, ovvero come farle gestire agevolmente all’utente.

La necessità era appunto quella di dare all’utente un’interfaccia backend semplice da utilizzare e versatile, attraverso l’aggiunta delle righe e colonne senza limiti. L’altro requisito era quello di generare un codice HTML in linea con quello del tema HTML già pubblicato su Themeforest.

Per unire un’UX agile e la plasticità dell’output ho analizzato in rete i plugin disponibili per capire la strada da seguire: riutilizzare un plugin già fatto o cominciare lo sviluppo di una mia libreria. Ho trovato un buon plugin “Pricing Table” di WpEden e ho usato la sua versione free come base di sviluppo.

Da plugin l’ho trasformato in libreria da includere nella functions.php con il seguente codice:

/* Include Pricing table library */
include_once('inc/pricing-table/pricing-table.php');

L’intera libreria in questo caso l’ho aggiunta all’interno del mio tema nella cartella inc/pricing-table

L’interfaccia backend si presenta inizialmente come un nuovo post-type “pricing table”, dove vengono elencati i listini già creati con il loro shortcode da inserire nel post.

pricing-table-backend-1

La cosa interessante appare quando si modifica un listino prezzi. Gli autori di wpeden hanno creato un meta-box ad-hoc per gestire le righe e le colonne e il listino “speciale”, che solitamente viene evidenziato in qualche modo.

pricing-table-backend-2

Come si vede dallo screenshot qui sopra, i bottone “Add Package” e “Add Feature” consentono di estendere il listino per adattarlo alle proprie esigenze.

Questa versione è pensata per sviluppatori di temi WordPress, quindi la libreria genererà semplicemente l’HTML, mentre le direttive di stile dovranno risiedere nel foglio di stile principale del tema, style.css.

Trovate il codice nel repository github che ho creato appositamente. Aspetto i vostri commenti e soprattutto il vostri pull-request.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *