7 days of unlimited WordPress themes, plugins & graphics - for free!* Unlimited asset downloads! Start 7-Day Free Trial
Advertisement
  1. Web Design
  2. WordPress

Come creare un plugin pacchetto di componenti aggiuntivi per Wordpress

Read Time: 11 mins

Italian (Italiano) translation by Cinzia Sgariglia (you can also view the original English article)

Mantenere la funzionalità separata dalla presentazione è una buona pratica nello sviluppo dei temi per Wordpress. In questo articolo imparerete come farlo, fornendo ai vostri utenti un plugin confezionato unico per i vostri temi.

La logica dello sviluppo del tema

Abbiamo venduto temi per Wordpress su ThemeForest per più di quattro anni e durante questo tempo abbiamo imparato molte cose che ci hanno aiutato ad avere successo in questo mercato. Uno degli aspetti chiave dello sviluppo di temi di successo è "la corretta logica dello sviluppo del tema".

Il vantaggio chiave del separare la logica di sviluppo è la velocità di produzione: più veloce sei a creare temi di qualità, più reddito puoi generare. Mantenere la funzionalità in un plugin separato è anche di aiuto quando bisogna aggiornare. Immaginate che abbiate dieci temi su ThemeForest e vogliate aggiungere una nuova funzionalità come aggiornamento. Avere tutte le funzionalità in un singolo plugin significa che avrete bisogno di aggiornarlo solo una volta in generale, altrimenti anche un piccolo aggiornamento diventa lento e potenzialmente doloroso.

Quindi se volete creare temi potenti e guadagnare molti più soldi, rispettate il sistema dei plugin e temi di Wordpress.

Tipi di funzionalità

Che tipo di funzionalità dovrebbe contenere un tema premium? Che tipo di cose dovremmo inserire in un plugin separato? Ecco una lista di componenti chiave che di solito manteniamo separati dai files del tema:

  • Pannello delle opzioni del tema
  • Campi personalizzati estesi della pagina/articolo
  • Widgets personalizzati
  • Shortcodes personalizzati
  • Tipologie di articolo personalizzate
  • Funzioni extra personalizzate

In questo articolo non entreremo nei dettagli di come creare i componenti stessi, ma spiegheremo come confezionarli in un unico plugin di componenti aggiuntivi.

Iniziamo

Andate su wp-content > plugins e create una cartella vuota con il nome del vostro plugin pacchetto. Vi raccomandiamo di usare un nome ovvio. Per esempio, il nostro plugin di componenti aggiuntivi si chiama "ninzio-addons" (essendo Ninzio il nome della nostra azienda).

Importante: non usate il trattino basso per il nome della cartella! Usate un trattino se serve. 

Poi, nella cartella del plugin create un file php con l'esatto nome della vostra cartella. Nel nostro esempio sarebbe "ninzio-addons.php". Di nuovo, nessun trattino basso per favore. Aprite questo file e aggiungete la seguente intestazione commentata DocBlock:

Esaminiamo i dettagli che abbiamo aggiunto qui:

  • Nome del plugin: dovrebbe essere breve e descrittivo.
  • URI del plugin: potete incollare il vostro indirizzo web qui.
  • Dominio di testo: questo è un parametro molto importante. Dovrete chiamarlo allo stesso modo della vostra cartella del plugin e del file principale. Con il dominio di testo voi e i vostri utenti potete tradurre le stringhe del plugin. In seguito vedremo come tradurre un plugin pacchetto di componenti aggiuntivi (Troviamo che sia molto importante per i nostri clienti).
  • Percorso del dominio: anche questo parametro è molto importante per la traduzione del plugin. Il percorso del dominio è relativo alla cartella file della lingua. Andate nella vostra cartella del plugin di componenti aggiuntivi  e create una cartella vuota con il nome "lingue". Per il momento lasciatela vuota; più tardi creeremo il file della lingua.
  • Tutti gli altri parametri "Autore", "Versione, "URI dell'autore" sono abbastanza ovvi. 

Adesso, avendo creato la cartella del nostro plugin di componenti aggiuntivi e il file principale, è ora di configurare il nostro plugin.

Configurazione

Nel file principale del plugin, dopo l'intestazione commentata, incollate questo snippet:

Questo è per ragioni di sicurezza; blocca l'accesso diretto al file del plugin.

Subito dopo, aggiungete questo codice:

Qui carichiamo il nostro dominio di testo del plugin - siate sicuri che il nome della funzione sia corretto. La nostra raccomandazione è che usiate dei nomi ovvi con un prefisso del vostro plugin. Per esempio ninzio_addons. E poiché è una funzione php, usiamo i trattini bassi anziché le lineette. 

Siate sicuri di essere accurati quando copiate o digitate la funzione load_plugin_textdomain. Per il parametro del dominio inserite l'esatto dominio di testo che abbiamo definito prima. E per il parametro con percorso relativo del plugin inserire il percorso della cartella delle lingue che abbiamo creato in precedenza.

Percorso della cartella del plugin

Ora definiamo il percorso della cartella del plugin; aggiungete questo codice:

Qui stiamo usando your_addons come percorso della cartella del plugin. Fin qui tutto bene, abbiamo creato il nostro plugin, adesso è il tempo di riempirlo di funzionalità personalizzate.

Pannello delle opzioni del tema

Non useremo questo passaggio per includere come creare un pannello di opzioni per un tema - potete crearne uno personalizzato o fare come noi; usare un framework di pannello delle opzioni per temi pronto. Se siete nuovi ai framework di pannello di opzioni raccomandiamo la lettura degli articoli di Bonang Salemane sull'integrazione del tema del Framework Redux:

Per aggiungere un pannello di opzioni del tema ai vostri componenti aggiuntivi copiate la cartella del pannello di opzioni, interamente, nella cartella del plugin dei componenti aggiuntivi. Adesso abbiamo bisogno di richiedere diversi file per attivarlo:

In questo snippet di codice richiediamo due dei principali file del framework Redux: il framework.php che gestisce la funzionalità del pannello di opzioni, e il file config.php che è responsabile della configurazione del pannello di opzioni. I nostri file del pannello di opzioni sono collocati nella cartella "optionpanel" situata all'interno della cartella del plugin ninzio-addons. Fatto.

Funzioni personalizzate

È ora che aggiungiamo qualche funzione personalizzata. Create un file all'interno della vostra cartella del plugin dei componenti aggiuntivi e chiamatela qualcosa di simile a "addons-functions.php". Mettete tutte le vostre funzioni personalizzate all'interno di questo file.

Una cosa da guardare è che usiate le convenzioni di denominazione della funzione corrette. Usate nomi di funzione descrittivi con un prefisso unico. Per esempio:

Subito dopo i file del framework del tema, richiedono il tuo file di funzioni personalizzate:

Widget personalizzati

E ora inseriamo qualche widget personalizzato. Create una cartella con il nome "widgets" all'interno della cartella del vostro plugin di componenti aggiuntivi, mettete tutti i vostri file dei widget personalizzati all'interno di quella cartella. La denominazione del file dei widget personalizzati non è critica, ma si raccomanda che usiate prefissi e trattini, non trattini bassi.

Per esempio, il nostro widget personalizzato per Twitter si chiama "ninzio-recent-tweets.php". Allo stesso modo, il nostro widget per Mailchimp si chiama "ninzio-mailchimp.php". Inseriamoli così:

Ancora, non copriremo il processo effettivo di creazione dei widget personalizzati; per questo, date un'occhiata all'articolo di Bonang Salemane:

I post personalizzati e le tassonomie

Se volete aggiungere un portfolio, o degli eventi o qualsiasi cosa che sia simile ai normali articoli di Wordpress, ma che ha bisogno di essere separato dal tema, dovete usare i post personalizzati. Tutti i nostri temi hanno i post personalizzati inclusi. Creare post personalizzati può essere complesso, quindi ancora una volta ciò ricade oltre lo scopo di questo tutorial, ma raccomando di leggere quello di Tom McFarlin:

Per i post personalizzati dovete creare una cartella separata all'interno del vostro plugin di componenti aggiuntivi, per esempio "ninzio-projects". E dentro questa cartella riporre tutti i vostri file che si riferiscono ai post personalizzati. I fille più importanti qui sono i file principali che creano i post personalizzati, il singolo file dell'articolo e il file dell'articolo loop/archivio. Chiamate il file principale dei vostri post personalizzati allo stesso modo di come avete nominato la cartella dei post personalizzati, come "ninzio-projects.php". Mettete il vostro codice dei post personalizzati dentro quel file, poi per attivare i vostri post personalizzati sarà necessario richiamare il file principale: 

Quando separate una funzionalità come questa, dovete sempre considerare i vostri clienti - più precisamente come essi possono estendere/riscrivere i file del template dei post personalizzati (archivio e singolo). Supponiamo che il nome dei nostri post personalizzati sia "projects". Il file del post personalizzato singolo dovrebbe chiamarsi "single-projects.php" e il file loop/archivio dovrebbe chiamarsi "archive-projects.php".

E se il post personalizzato ha anche tassonomie personalizzate dovreste creare anche per esse un file separato. Chiamiamo il nostro file tassonomia "taxonomy-projects.php". Quindi, ora abbiamo tre file:

Rendiamoli riscrivibili. Aggiungete queste tre funzioni al vostro file dei componenti aggiuntivi principale:



Cambiate il nome di queste funzioni per avere il vostro prefisso unico. La logica principale qui è di caricare i file del template dei post personalizzati dopo aver verificato se una copia di esso sia presente nella cartella del tema. Quando il vostro cliente copia il template dei post personalizzati nel tema e lo estende o lo sovrascrive, il vostro plugin dei componenti aggiuntivi caricherà la versione dei post personalizzati del vostro cliente. Quindi in questo caso i file core nel plugin dei componenti aggiuntivi non sono cambiati, sono solamente estesi dal vostro cliente. Qualsiasi aggiornamento futuro non cancellerà le modifiche personalizzate del vostro cliente.

Script, stili e shortcode personalizzati

Per gli script e gli stili personalizzati raccomandiamo che creiate delle cartelle separate e accodiate i file come fareste nel file "functions.php" del vostro tema.

Se pianificate di aggiungere degli shortcode personalizzati avrete bisogno di creare e includere il vostro file degli shortcode nella vostra cartella dei componenti aggiuntivi. Create una cartella con il nome "shortcodes" e all'interno di questa cartella create il file "yourprefix-shortcodes.php" (nel nostro caso: "ninzio-shortcodes.php"). Nel file "-shortcodes.php" dovrete mettere tutto il vostro codice degli shortcode personalizzati.

Come avrete dedotto fino a ora, non useremo questo tutorial per comprendere il processo di creazione degli shortcode personalizzati, ma raccomandiamo di leggere il tutorial di Siddharth:

Inseriamo il nostro file degli shortcode personalizzato:

Linguaggi

Abbiamo quasi finito con il plugin dei componenti aggiuntivi. Dopo che abbiamo testato tutte le funzionalità personalizzate è ora di creare il file delle lingue per rendere il plugin traducibile.

Andate su addons plugin folder > languages. Usate il software PoEdit (PoEdit è un'applicazione gratuita, disponibile per Mac, Windows e Linux) per generare il file della lingua. Di nuovo, siate ben accurati con la denominazione del file, i file risultanti devono chiamarsi esattamente come la cartella del plugin dei componenti aggiuntivi. Per esempio, il nome del nostro plugin è "ninzio-addons", il file delle lingue deve essere "ninzio-addons.pot". Questo è il file principale per la lingua che contiene tutte le stringhe dentro il vostro dominio di testo.Da questo file potete creare altri file per le lingue.

Per tradurre il vostro file per la lingua del plugin dei componenti aggiuntivi:

  1. Aprite PoEdit.
  2. In PoEdit andate su File > New form POT/PO file...
  3. Selezionate e aprite il file pot nella cartella delle lingue.
  4. Inserite il vostro nome, l'indirizzo email, la vostra lingua e il vostro paese (per esempio French fr_FR, German de_DE).
  5. Cliccate il tasto Update nella UI principale di PoEdit.
  6. Salvate il file, chiamatelo "filename-xx_XX.po" con "xx_XX" della vostra lingua e del vostro paese.
  7. Questo è tutto!

Conclusioni

Adesso il vostro plugin è pronto, ben fatto! Abbiamo raccolto tutte le funzionalità necessarie dai nostri file di presentazione e fornito un plugin pacchetto che possiamo aggiornare nei nostri molteplici temi.

Spero che vi siate divertiti a seguirmi, non dimenticate che potete fare un fork dell'esempio di plugin pacchetto dei componenti aggiuntivi su Github e usarlo come punto di partenza.

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Web Design tutorials. Never miss out on learning about the next big thing.
Scroll to top
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.