WordPress API

Un Tuffo nelle WordPress API

Apriamo adesso una piccola serie teorica che mira a mostrarti come sia possibile sviluppare in WordPress utilizzando le funzionalità che lui stesso ci mette a disposizione. Conoscere le API di questa piattaforma significa diventarne padroni.

Imparare ad utilizzare le WordPress API non ti permetterà soltanto di conoscere a fondo le potenzialità di sviluppo che questa piattaforma ci mette a disposizione ma ti permetterà anche di utilizzare ed aggiungere sempre più funzioni nello sviluppo di temi e plugin.

In questo primo articolo faremo una panoramica delle diverse API che vengono offerte e cercheremo di mettere in luce gli aspetti più importanti cercando di renderti più chiaro quali funzionalità hai a disposizione. Approfondiremo successivamente i concetti espressi da ciascuna di questa API man mano che procederemo con la serie.

Dashboard Widgets API

Questa API, introdotta sin dalla versione  2.7, ci permette di aggiungere delle widget amministrative in modo semplice e veloce. Come creatori di temi o plugin questa API ti permetterà di mostrare delle informazioni rilevanti, o dei settaggi, direttamente all’interno della dashboard dell’amministratore.

Database API

Più che di una singola API qui verranno presentate le varie API sviluppate dai programmatori WordPress per semplificare la nostra vita quando dovremo andare ad inserire o leggere le varie informazioni presenti all’interno del database.

Molto utile se lo sviluppo del vostro plugin o tema richiede l’impostazione di settaggi iniziali oppure se dovrete interagire con il database durante l’utilizzo del vostro progetto, cosa che capita sempre più di frequente.

HTTP API

Siccome all’interno di PHP esistono moltissimi modi per inviare delle richieste HTTP WordPress ha sviluppato per noi questa API che ci permette di inviare delle richieste HTTP in moltissimi modi, il più delle volte, anche gestendo i vari casi. Forse ti stai chiedendo “perché avrebbe dovuto fare una cosa del genere?“; diciamo principalmente per risolvere questi due problemi principali:

  • molti host online supportano soltanto alcuni dei modi con i quali vengono inviate le richiesta HTTP e, a volte, non ne supportano neanche uno. Per ovviare a questo problema è stato scelto di offrire più metodi possibili in modo che chiunque fosse in grado di inviare le richieste ed ottenere in risposta il tuo sito;
  • l’altro motivo per cui è stata sviluppata questa API è perché fino alla versione 2.7 non esisteva uno standard per lavorare con queste richieste e molti sviluppatori di plugin avevano iniziato ad offrire le proprie soluzioni facendo aumentare il numero di alternative possibili e comunque valide. Quindi la creazione di questa API ci ha fornito uno standard per lavorare con le richieste HTTP.

Filesystem API

Hai mai pensato a come poter andare a modificare i file locali in WordPress? Per nostra fortuna gli sviluppatori di questa piattaforma ci pensano fin dalla versione 2.6! Questo perché molte volte il modo con il quale accediamo e modifichiamo i nostri file potrà andare a creare degli errori all’interno della struttura di WordPress. Molte volte gli account che utilizziamo all’interno del nostro FTP non combaciano con i privilegi dell’utente amministratore dello stesso server, oppure nel salvare i nostri file può succedere che i permessi vengono impostati nella maniera sbagliata.

Se i termini che ho utilizzato fino ad ora non ti sono familiari nessun problema, la prima lezione di questa serie ci permetterà di comprendere nel dettaglio di cosa sto parlando, ma intanto controlliamo da vicino i motivi principali che hanno spinto gli sviluppatori WordPress a creare questa API:

  • Sicurezza – come dicevo prima, il rischio di errori che potremmo incontrare che riguardano il creatore del file o dei semplici permessi è molto alto e succede molto spesso all’interno di scarsi servizi di hosting condiviso e potrebbe portarci alla perdita di controllo dei nostri stessi file;
  • Compatibilità – generalmente noi sviluppatori non conosciamo come sia stato configurato nel dettaglio il server che ospita il nostro sito web, questa API ci fornirà i metodi necessari che i nostri temi, plugin o stessi utenti avranno i giusti permessi per poter operare con il filesystem.

Plugin API

Più che una API questa rappresenta una collezione di tutti quei metodi e parametri che possiamo utilizzare quando sviluppiamo un plugin per WordPress. Al suo interno potrete trovare una valida spiegazione di cosa sono gli Action e i Filter hook, come si utilizzano all’interno dei plugin e quali metodi potremo utilizzare su di essi.

Questa è forse una delle più grandi ed interessanti API che WordPress ci mette a disposizione ma in questo articolo ho deciso di farne soltanto un cenno perché non mancheranno sicuramente le possibilità di approfondire questo argomento.

Rewrite API

Una delle funzioni più interessanti ed utili al SEO che molti CMS, WordPress incluso, ci offrono riguarda la possibilità di modificare le URL che puntano ai nostri file creando qualcosa di ancor più semplice, qualcosa di più naturale per i motori di ricerca. Sicuramente avrai utilizzato più e più volte queste API, sopratutto quando ti dirigi all’interno della pagina Impostazioni->Permalink presente all’interno della vostra installazione WordPress.

La pagina di impostazione del permalink

Come è possibile vedere dall’immagine sopra, WordPress ci offre diverse soluzioni preformattate per creare i nostri permalink, le URL che punteranno ai vari articoli e file presenti nell’installazione; ma come ti devi comportare se sviluppi un tema per il quale vuoi permettere all’utente di caricare dei contenuti o inserire dei Custom Post Type con delle permalink preimpostate e modificabili? Sarai in grado di scoprire tutto questo all’interno delle lezioni che man mano pubblicheremo!

Settings API

Introdotte nella versione 2.7 queste API sono diventate di fondamentale importanza se all’interno di qualsiasi tema o plugin necessiti di una pagina impostazioni. I metodi che vengono forniti permetteranno infatti una semplice gestione e realizzazione dei moduli necessari a modificare le impostazioni di default per il proprio progetto.

Anche se l’organizzazione, la validazione e la registrazione dei nuovi valori richiederà sempre un po’ di sforzo da parte dello sviluppatore, in compenso ci vengono forniti diversi strumenti per il debug e e la gestione delle opzioni da mostrare.

Questa API ti sarà veramente utile se desideri creare complesse pagine di impostazioni alla velocità della luce o se, semplicemente, desideri estendere delle opzioni già presenti in altre pagine. Puoi dare uno sguardo a questa API consultando la piccola serie che abbiamo precedentemente pubblicato.

Shortcode API

Fin dalla versione 2.5 di WordPress questa API ci aiuta ad inserire complessi blocchi HTML all’interno del proprio articolo utilizzando un sistema user-friendly. Una volta che conoscerai a fondo questa API sarai in grado di creare interessanti shortcode pronti da utilizzare all’interno di temi o plugin, aiutando i tuoi clienti ad arricchire la loro esperienza WordPress permettendogli di inserire qualsiasi cosa desiderino all’interno dei vostri progetti.

Per tutti coloro che desiderano creare temi o plugin consiglio caldamente di venire a conoscere questa API che ci permetteranno di fare la differenza rispetto ad altri sviluppatori WordPress.

Theme Customization API

Nella recente versione 3.4 è stata inserita la possibilità di modificare dal vivo i template di base, come ad esempio Twenty Fourtheen, direttamente dal pannello di amministrazione. Questo ci permette non soltanto di impostare i colori per i link e l’immagine di background del nostro header, ma saremo anche in grado di andare a modificare moltissime delle impostazioni del proprio tema come, ad esempio, lo schema dei colori ed addirittura il suo layout. Saremo liberi di sperimentare le varie opzioni a nostro piacimento visto che le modifiche, fintanto che non verranno salvate, resteranno valide soltanto per la live preview!

Theme Modification API

Meno interessante dell’API precedente, ma altrettanto utile, questa ci offre metodi e hook per poter andare a prendere i valori impostati per il tema e di andarli ad utilizzare successivamente all’interno dei nostri progetti. Se questa descrizione non sembra esaustiva, proviamo con un esempio.

All’interno del tema che abbiamo sviluppato abbiamo deciso di impostare i colori dei link allo stesso valore del colore di sfondo dell’elemento body, tramite le Theme Customization API offriamo all’utente la possibilità di modificare il colore di sfondo, ma come facciamo a sapere il nuovo valore che verrà impostato? Ecco che vengono in nostro soccorso le Theme Modification API e ci consentiranno di conoscere ed utilizzare questo valore.

Widgets API

Ne hai sempre sentito parlare, molti temi e plugin ne offrono di personalizzate ma non ti sei mai chiesto come sia possibile crearne una? Se desideri migliorare le tue competenze di sviluppatore WordPress ti consiglio caldamente di venire a consultare questa serie che ti mostrerà come sia possibile inserire e creare nuove widget all’interno del tuo tema o plugin WordPress.

Conclusioni

Questa serie non vuole certo fermarsi qua! Durante le ricerche e gli esperimenti che ho fatto sono venuto alla scoperta di altre API che sono veramente utili al processo di sviluppo all’interno di WordPress. Il mio scopo è quello di mantenere aggiornata questa sezione con sempre nuove API e serie che riguardano come sia possibile sviluppare con gli strumenti che ci vengono forniti da questa attiva comunità.

Se noti che manca qualcosa e magari lo hai già scritto, perché non pensi ad inviarmi il tuo articolo? Accetto sempre contributi dei miei visitatori e sarò ben lieto di dare luce alle tue conoscenze!

Lascia il tuo Pensiero