Se hai trascorso del tempo nella community di WordPress negli ultimi anni, è probabile che tu abbia sentito parlare delle nuove REST API. Ad ogni modo, a meno che tu non sia uno sviluppatore esperto, potresti non avere idea di cosa siano effettivamente le REST API di WordPress.

Nonostante i dettagli tecnici siano un pò complessi, i concetti di base di questa funzione sono abbastanza facili da comprendere. Le nuove API aiutano a espandere ciò che WordPress può fare come piattaforma. Inoltre, le REST API rendono più semplice per gli sviluppatori la connessione di WordPress con altri siti e applicazioni.

In questa guida completa, ti guideremo attraverso tutte le nozioni di base che devi conoscere. Spiegheremo cosa sono le API in generale e cosa sono le RESTFUL API (e la versione specifica di WordPress) in particolare. Quindi, parleremo di come iniziare a utilizzare le WordPress REST API in autonomia.

Incominciamo!

Un’introduzione alle API (Application Programming Interface)

Prima di approfondire le REST API in modo specifico, facciamo un passo indietro. Per comprendere questo concetto, è fondamentale innanzitutto avere un’idea di base di cosa siano le API in generale.

Un’API – o Application Programming Interface – consente a due applicazioni di comunicare tra loro. Quando visiti un sito web, ad esempio, il tuo browser invia una richiesta al server che ospita quel sito. L’API di quel server riceve la richiesta del tuo browser, la interpreta e restituisce tutti i dati necessari per visualizzare il tuo sito.

Ovviamente c’è molto di più sul modo in cui le API funzionano in senso tecnico. Ad ogni modo, noi ci concentreremo su ciò che probabilmente conta di più: le applicazioni pratiche. Le API hanno ricevuto molta attenzione e visibilità, perché molte aziende hanno iniziato a impacchettarle e fornirle come prodotti che è possibile utilizzare.

In altre parole, gli sviluppatori di un’azienda come Google raccolgono insieme alcune parti del codice dell’applicazione e le rendono disponibili al pubblico . In questo modo, altri sviluppatori possono utilizzare le API come strumento per connettere i propri siti ai servizi Google e sfruttarne le funzionalità:

Libreria delle API di Google

Puoi ad esempio utilizzare l’API di Google Maps per posizionare una mappa sul tuo sito che benefici di tutti i dati e le funzionalità di Google. Questo evita di dover utilizzare il codice per realizzare una mappa e raccogliere tu stesso tutti quei dati. Lo stesso vale per un’ampia gamma di siti e applicazioni.

Man mano che i siti web e le funzionalità su cui fanno affidamento diventano più complessi, strumenti come le API diventano cruciali. Consentono agli sviluppatori di sfruttare le funzionalità esistenti semplicemente “collegando” nuove funzionalità al sito web. A sua volta, il sito che possiede l’API beneficia di maggiore esposizione e traffico.

Le regole fondamentali di una REST API (Representational State Transfer)

Esistono molti modi per creare un’API. Una REST (Representational State Transfer) API è un tipo particolare che si sviluppa secondo regole specifiche. In altre parole, REST presenta una serie di linee guida che gli sviluppatori possono utilizzare durante la creazione di API. Ciò garantisce che le API funzionino in modo efficace.

Per capire come funzionano le REST API, devi quindi sapere con quali regole (o “vincoli”) interagiscono. Esistono cinque elementi di base che rendono un’API “RESTful” . Tieni presente che il “server” è la piattaforma a cui appartiene l’API e il “client” è il sito, l’applicazione o il software che si collega a tale piattaforma:

  1. Architettura client-server. L’API deve essere realizzata in modo che il client e il server rimangano separati l’uno dall’altro. In questo modo possono continuare ad essere sviluppati singolarmente e possono essere utilizzati indipendentemente.
  2. StatelessnessLe REST API devono seguire un protocollo “stateless”. In altre parole, non possono archiviare alcuna informazione sul client e sul server. La richiesta del client dovrebbe includere tutti i dati necessari in anticipo e la risposta dovrebbe fornire tutto ciò di cui il client ha bisogno. Questo rende ogni interazione una negoziazione “one and one” e riduce sia i requisiti di memoria che potenziale errori.
  3. Cache. Una “cache” è l’archiviazione temporanea di dati specifici, quindi può essere recuperata e inviata più rapidamente. Le API RESTful utilizzano i dati memorizzati nella cache ogni volta che è possibile, per migliorare la velocità e l’efficienza. Inoltre, l’API deve comunicare al client se ogni dato può e deve essere memorizzato nella cache .
  4. Layered system Le REST API ben progettate sono costruite usando i livelli, ognuno con la propria funzionalità designata. Questi livelli interagiscono, ma rimangono separati. Ciò semplifica la modifica e l’aggiornamento dell’API nel tempo e migliora anche la sua sicurezza .
  5. Interfaccia uniforme. Tutte le parti di una API REST devono funzionare tramite la stessa interfaccia e comunicare utilizzando lo stesso linguaggio. Questa interfaccia dovrebbe essere progettata specificamente per l’API e in grado di evolvere da sola. Non dovrebbe dipendere dal server o dal client per funzionare.

Qualsiasi API che segue questi principi può essere considerata RESTful. C’è anche un sesto vincolo, denominato Codice on demand. Se seguita, questa tecnica consente all’API di istruire il server per trasmettere codice a un client, al fine di estenderne le funzionalità. Tuttavia, questo vincolo è facoltativo e non è adottato da tutte le REST API.

Le REST API di WordPress

A questo punto, ti starai chiedendo come tutto ciò ti riguardi. Le API sono strumenti eccellenti, ma sono rilevanti per il tuo lavoro quotidiano? Se sei un utente WordPress, la risposta è inequivocabilmente “SI”.

Le WordPress REST API sono in fase di sviluppo da un paio d’anni. Per un pò di tempo, sono state integrate come plugin indipendente disponibile per chiunque volesse sperimentare e a cui gli sviluppatori potevano contribuire nel tempo.

Di fatto, c’erano due versioni separate del plugin WP REST API. Alcuni elementi dell’API sono stati aggiunti alla piattaforma principale già dall’aggiornamento 4.4. fino alla piena integrazione avvenuta a partire da WordPress 4.7 (nel 2016). Ciò significa che oggi WordPress ha la sua API REST completamente funzionale.

Perché il CMS ha fatto questa mossa? Secondo la pagina del progetto stesso, è perché WordPress sta diventando un “framework applicativo completo”. In altre parole, l’API REST consente alla piattaforma di interagire con qualsiasi sito e applicazione web. Inoltre, può comunicare e scambiare dati indipendentemente dal linguaggio utilizzato da un programma esterno.

REST API

Questo apre numerose possibilità per gli sviluppatori . Inoltre, rende WordPress una piattaforma più flessibile e universale che mai. Come afferma Katie Keith, il direttore operativo di Barn2 Media :

Comprendendo le REST API gli sviluppatori di WordPress possono scegliere il modo più efficace per implementare ogni attività, senza essere limitati a tecnologie o piattaforme specifiche come PHP o il back-end di WordPress. Utilizzate in modo efficace, le REST API di WordPress semplificano notevolmente le integrazioni di terze parti … Offrono anche nuove opportunità, ad esempio per creare le tue app mobile basate su WordPress o esplorare modi nuovi e unici per comunicare con WordPress.

È importante notare che potresti sentire questa funzione a volte denominata JSON REST API di WordPress. La parte ‘JSON‘ , che sta per JavaScript Notation Object, descrive il formato utilizzato da questa API per scambiare dati. Tale formato si basa su JavaScript ed è un modo conosciuto di sviluppare API grazie al suo collegamento con molti dei linguaggi di programmazione comuni. In altre parole, un’API JSON agevola le comunicazioni tra applicazioni che utilizzano linguaggi diversi.

Anatomia di una richiesta API REST di WordPress

Ora cerchiamo di capire lo scopo generale e la direzione delle API di WordPress e entriamo in alcuni dettagli su come funzionano. Sono diversi iconcetti di base da assimilare se vuoi metterti alla prova e iniziare a sperimentare tu stesso le API.

Come abbiamo spiegato, ogni API elabora richieste e restituisce risposte. In altre parole, un client chiede di eseguire una determinata azione e l’API la esegue. Il modo esatto in cui le API fanno ciò può variare. Le REST API sono progettate specificamente per ricevere e rispondere a particolari tipi di richieste, utilizzando semplici comandi HTML (o “metodi”).

Per esemplificare, ecco i metodi HTML basilari e più importanti che un client può inviare:

  • GET: recupera una risorsa dal server (come un particolare dato).
  • POST: il client aggiunge una risorsa al server.
  • PUT: puoi usarlo per modificare o aggiornare una risorsa che è già sul server.
  • DELETE: come suggerisce il nome, rimuove una risorsa dal server.

Insieme a questi comandi, il client invierà una o più righe che comunicano esattamente quale risorsa si vuole e cosa dovrebbe essere fatto con essa. Ad esempio, una richiesta per caricare un file PHP in una particolare cartella su un server potrebbe apparire così:

POST/nomecartella/mio_file.php

La parte /foldername/my_file.php è chiamata ‘route’ , poiché indica all’API dove andare e con quali dati interagire. Quando la si combina con il metodo HTTPPOST in questo caso), l’intera funzione viene definita “endpoint”.

La maggior parte delle API REST e dei client che interagiscono con esse sono molto più complicate di questa – inclusa la versione di WordPress. Tuttavia, questi elementi costituiscono la base per il funzionamento delle API REST di WordPress.

Come iniziare a utilizzare le WP REST API

A condizione che tu abbia impostato un sito WordPress, puoi iniziare subito a sperimentare le REST API. È possibile eseguire varie richieste GET per recuperare i dati direttamente, semplicemente utilizzando il browser.

Per accedere alle API di WordPress, dovrai iniziare con il seguente percorso:

iltuosito.it/wp-json/wp/v2

Quindi, puoi aggiungere stringhe a questo URL per accedere a vari tipi di dati. Ad esempio, puoi cercare un profilo utente specifico tramite un percorso come questo:

iltuosito.it/wp-json/wp/v2/users/4567

In questo caso, “4567” è l’ID utente univoco del profilo che si desidera vedere. Se non indichi quell’ID, puoi vedere invece un elenco di tutti gli utenti sul tuo sito:

Un elenco di utenti tramite le REST API di WordPress.

Puoi utilizzare lo stesso percorso di base per visualizzare altri tipi di dati, come post o pagine. È anche possibile cercare sottoinsiemi di dati che soddisfano determinati criteri. Ad esempio, è possibile recuperare tutti i post che includono un termine specifico utilizzando questo URL:

iltuosito.it/wp-json/wp/v2/posts?=search[keyword]

Questa è solo un semplice esempio, ovviamente. Non c’è limite a ciò che puoi effettivamente fare usando le WordPress REST API. Se vuoi saperne di più su come funzionano, ti consigliamo di considerare le seguenti risorse:

Le WP REST API sono senza dubbio un argomento complesso ma vale la pena comprendere le basi di come funziona questa tecnologia e come puoi sfruttarla. Inoltre, potrebbe anche permetterti di iniziare a dilettarti nello sviluppo in autonomia!

Un altro approccio all’utilizzo delle WordPress REST API

Le REST API di WordPress possono essere utilizzate in diverse situazioni e progetti interessanti. Lo abbiamo visto abbastanza chiaramente.

C’è un’area, tuttavia, in cui le WP REST API stanno riscuotendo un certo successo:

Headless WordPress è l’idea di sganciare i due livelli principali dell’ecosistema WordPress: il back-end e il front-end.

Ciò ti consente di usufruire di tutte le funzionalità che il CMS ha sotto il cofano e collegarle con un prodotto finale che non utilizza il front-end di WordPress.

Conclusione

Non c’è momento migliore per conoscere le REST API di WordPress. Dato che sono state completamente integrate nel core di WordPress, giocheranno un ruolo importante nel futuro di questa piattaforma. Gli sviluppatori di tutto il mondo useranno queste API per connettere WordPress ad un rete più ampia in modi precedentemente difficili o impossibili.

Comprendere questo concetto è impegnativo. Ad un livello base, tuttavia, i concetti sono abbastanza facili da comprendere. Una API REST è un’interfaccia che consente a due software di “dialogare” tra loro. Viene creata seguendo linee guida che ne assicurano la flessibilità, l’estensione e la sicurezza. Se vuoi approfondire il modo in cui funzionano e come utilizzarle, ci sono molte risorse utili come il manuale ufficiale delle REST API di WordPress.

Buon lavoro!