Guida Base alla REST API di WordPress

23 Oct 2019 | M.A.D.R.

La REST API sta per cambiare WordPress. Potreste non averlo notato, visto che molto avviene dietro le quinte, ma la REST API avrà un grande impatto sul futuro di WordPress, sia in termini di codebase che di utilizzo.

Se non avete lavorato con la REST API di WordPress, potreste chiedervi di cosa si tratta. Quindi iniziamo subito a vedere cos’è la REST API.

Che Cos’è la REST API di WordPress?

La REST API di WordPress è un’interfaccia che gli possono utilizzare per accedere a WordPress dall’esterno dell’installazione. È possibile accedervi utilizzando JavaScript, il che significa che può essere utilizzata per creare siti web e applicazioni interattive.

REST sta per Representational State Transfer e API sta per Application Programming Interface. Vediamo cosa significano entrambi.

Cos’è una Application Programming Interface (API)?

Un’Application Programming Interface, o API, è come segue:

“Un’interfaccia o protocollo di comunicazione tra un client e un server per semplificare la costruzione di software lato client.”

Se non si ha familiarità con le API, questa definizione potrebbe non essere di grande aiuto. Per metterla in modo più semplice, un’API è un insieme di istruzioni che permette ad un sistema di interagire (o “interfacciarsi”) con un altro. Se avete mai , avete usato l’API di Google Maps, che permette al vostro sito WordPress di interfacciarsi con le maoppe di Google.

Questi sistemi non devono essere completamente separati. WordPress ha già più per cose come , impostazioni e . Queste API possono essere utilizzate dagli sviluppatori di plugin e temi per interagire con il core di WordPress e far succedere delle cose (come la creazione di scorciatoie e l’aggiunta di schermate di impostazioni per il pannello di amministrazione di WordPress).

La differenza con la REST API è che questa permette a sistemi esterni all’installazione di WordPress di interagire con WordPress, cosa in cui entra in azione la parte REST.

Che cos’è il Representational State Transfer (REST)?

Il Representational State Transfer, o REST, fornisce standard che i sistemi web possono utilizzare per interfacciarsi tra loro. Senza REST, due sistemi non sarebbero in grado di capirsi e quindi di inviare dati in un senso o nell’altro.

Affinché un’applicazione sia , deve essere conforme a cinque principi:

  1. Interfaccia uniforme.
  2. Client-server.
  3. Senza Stato.
  4. Memorizzabile nella Cache.
  5. Sistema a livelli.

Mettere insieme REST e API significa che la REST API è un insieme di istruzioni codificate per consentire ad altri sistemi di interfacciarsi con WordPress e che è programmate in modo tale da garantire che questi sistemi si capiscano a vicenda.

Significa che un sito web di terze parti o un’applicazione mobile, ad esempio, può accedere al vostro , recuperarne e aggiungere dati.

Ci sono però una serie di implicazioni e di utilizzi.

Lo Sfondo alla REST API di WordPress

La REST API di WordPress a dicembre 2016 come parte del core della versione 4.7, ma c’era già prima come plugin.

È progettata per supportare una serie di applicazioni basate su WordPress e per trasformare WordPress da a piattaforma per applicazioni.

È ampiamente utilizzata da , la cui interfaccia basata su JavaScript utilizza la REST API per interfacciarsi con il database di WordPress. Viene utilizzato anche dall’, che è entrata a far parte del core nel 2019.

La REST API amplia la gamma di applicazioni per le quali è possibile utilizzare WordPress. Mentre un sistema di gestione dei contenuti è eccellente per il funzionamento di un sito web complesso, una application platform può essere utilizzata anche come base per applicazioni web-based a pagina singola o per SPA (se avete mai utilizzato , allora ne avete conosciuto uno).

In queste applicazioni, il contenuto viene aggiornato quando l’utente esegue un’azione, invece di caricare nuove pagine. Dato che utilizza JavaScript (un linguaggio lato client) invece di (un linguaggio lato server), può far succedere le cose nel browser dell’utente senza dover inviare costantemente richieste al server.

Come accedere all’API WordPress REST API

Come si accede alla REST API di WordPress?

Per accedere all’API WP-REST, è necessario accedere al sito tramite la linea di comando. In WordPress questa si chiama . Non è possibile fare nulla di tutto questo attraverso il pannello di amministrazione o accedendo direttamente al codice del vostro sito.

Compatibilità

Se la vostra applicazione sarà utilizzata su dispositivi che non eseguono JavaScript o da utenti che possono averla disattivata, allora non funzionerà con la REST API.

Un sito WordPress in PHP genera codice HTML, quindi non soffre di questo problema. I dispositivi che non utilizzano JavaScript sono sempre più rari, ma se si sviluppa specificamente per questi dispositivi, la REST API non funzionerà.

Allo stesso modo, se è possibile che gli utenti disattivino JavaScript, allora lavorare con le API REST causerà dei problemi. Alcuni utenti disattivano JavaScript nel loro browser per motivi di accessibilità o di sicurezza.

Come Disattivare la REST API di WordPress

Se non volete che le applicazioni siano in grado di accedere ai dati del vostro sito utilizzando la REST API, potete disattivarla. Ricordate che i dati pubblici potrebbero essere accessibili a chiunque, non solo a voi.

Per farlo, è possibile installare il plugin . Questo plugin disabilita la REST API per chiunque non sia connesso al vostro sito.

In alternativa, potete aggiungere del codice al file functions del tema o scrivere un vostro plugin. È meglio scrivere un plugin in quanto non si tratta di funzionalità specifiche del tema.

Nel plugin aggiungete solo due righe:

add_filter( 'json_enabled', '__return_false' );
add_filter( 'json_jsonp_enabled', '__return_false' );

Questo disabiliterà completamente la REST API per il vostro sito. Potrebbe avere effetti a catena per le schermate di amministrazione, quindi accertatevi che tutto funzioni correttamente dopo aver attivato il plugin.

Soluzioni complete per ogni esigenza