wordpress rest api

37
WP REST API WooCommerce Meet Up 25 Marzo 2016 / Monopoli

Upload: francesco-carlucci

Post on 16-Feb-2017

897 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: WordPress REST API

WP REST API

WooCommerce Meet Up

25 Marzo 2016 / Monopoli

Page 2: WordPress REST API

1. Cos’è la REST API

2. Perché è importante

3. Idee ed casi di studio

4. Cominciamo ad utilizzarla

Affronteremo questi temi

Page 3: WordPress REST API

1) cos’è la WP REST API

API è l’acronimo di Application Programming Interface, ovvero un insieme di procedure che permettono di accedere alle funzionalità di un determinato software.

Page 4: WordPress REST API

1) cos’è la WP REST API

La REST API in WordPress è quindi un interfaccia di comunicazione che ci permette di far interagire WP con qualunque altra applicazione, o anche di semplificare o migliorare le interazione all’interno dell’installazione stessa.

Page 5: WordPress REST API

In che modo?

WP REST API utilizza il formato JSON (JavaScript Object Notation), che offre numerosi vantaggi tra cui:

• è più veloce e compatto rispetto a XML • è più leggibile anche dall’uomo • è compatibile con tutti i linguaggi e in

particolare javascript, python, e php

Page 6: WordPress REST API

Un esempio di risposta JSON

https://public-api.wordpress.com/rest/v1.1/sites/twentysixteendemo.wordpress.com/posts/6

Page 7: WordPress REST API

Azioni principali

Le principali operazioni che al momento possiamo seguire tramite API sono:

• POST - /sites/$site/posts/new

• GET - /sites/$site/posts/$post_ID

• PUT - /sites/$site/posts/$post_ID

• DELETE - /sites/$site/posts/$post_ID/delete

Page 8: WordPress REST API

E WooCommerce ha una sua API?

Ovviamente si, e funziona in maniera estremamente simile ma con le funzionalità estese a prodotti, ordini, attributi, coupon etc…

Page 9: WordPress REST API

Perché è un’evoluzione così importante per WordPress e perché tutti ne parlano?

Page 10: WordPress REST API

Un po di storia

WordPress stesso è nato come una piattaforma dedicata al personal blogging, e si è evoluto nel tempo diventando un vero e proprio framework che permette di creare portali complessi anche a livello enterprise.

Oggi il 25% dei siti web sul pianeta girano su WordPress ;)

Page 11: WordPress REST API

I Plugin, che grande invenzione!

IMHO, ciò che ha permesso un’evoluzione cosi rapida e importante oltre alla natura open-source del progetto, è stato l’ecosistema dei plugin, grazie ai quali è stato possibile moltiplicare le funzionalità di WP facendolo diventare una piattaforma e-commerce, un CRM, un calendario, un LMS, un social network e tanto altro ancora.

Page 12: WordPress REST API

Ma torniamo alle API

Per molti (me compreso) le API sono il prossimo grande passo per WordPress perché, come hanno fatto i plugin, offrono la possibilità di integrare il software in maniera semplice e sicura con qualunque altro applicativo web e mobile, e apre nuove frontiere all’utilizzo di WP.

Page 13: WordPress REST API

Alcune idee per utilizzare WP API e WC API

Page 14: WordPress REST API

Infinite possibilità

Viste le possibilità di interazione attraverso le API, le applicazioni nel “mondo reale” sono praticamente illimitate, ma possiamo razionalizzare alcuni esempi interessanti…

Page 15: WordPress REST API

Un po’ di idee

• WP come “Backend Only”

• Applicazioni mobili con WordPress

• Gestione centralizzata dell’inventario con

WooCommerce

• Temi “javascript based” (feelingrestful.com)

• API powered plugins (wp-search-live)

Page 16: WordPress REST API

Nel dettaglio: WP come “Backend Only”

Perché no? Lo sviluppo backend in genere richiede molto impegno. Con WP + WP API abbiamo: • un sistema sicuro e ben rodato per gestire ed

archiviare i nostri dati • le operazioni CRUD (create, read, update and

delete) gia disponibili di default grazie agli endpoint Post, Get, Put, Delete

• una splendida interfaccia gia familiare a milioni di utenti

• la possibilità di rendere disponibili i dati a qualunque tipo di frontend

Page 17: WordPress REST API

Applicazioni mobili, finalmente!

Grazie alle API, l’utilizzo di WordPress per lo sviluppo di applicazioni mobili diventa più semplice e completo, specialmente in accoppiata con tecnologie come Angular JS, ideale per le interazioni con JSON e compilabile tramite PhoneGap per Android, iOS e Windows Phone.

Page 18: WordPress REST API

Applicazioni mobili, finalmente!

Per gli utenti comuni esistono gia diversi servizi che sfruttano le API per creare applicazioni mobili native, e per i quali non è necessaria alcuna competenza tecnica specifica.

Page 19: WordPress REST API

In generale possiamo dire che se un dispositivo può effettuare una chiamata HTTP, pur interagire con WordPress

Page 20: WordPress REST API

Alcuni casi di utilizzo

Page 21: WordPress REST API

Calypso by Automattic

Un’unica interfaccia installata in locale per gestire tutti i tuoi siti WordPress

Page 22: WordPress REST API

È innovativo perché:

• È comodo, perché ti fa gestire tutti i tuoi

progetti da un’unica interfaccia

• È sempre disponibile, perché funziona anche

offline

• È veloce perché essendo API powered non

necessita di page refresh

Page 23: WordPress REST API

WooCommerce iOS app

Il tuo negozio sempre in tasca

Page 24: WordPress REST API

Reactor by Apppresser

Una soluzione SaaS per creare applicazioni mobili

Page 25: WordPress REST API

Editus

Semplifica la gestione dei contenuti con l’editing da frontend

Page 26: WordPress REST API

Ok! È arrivato il momento di cominciare ad utilizzare le API in maniera pratica

Page 27: WordPress REST API

Per iniziare…

• WooCommerce dispone di una API built-in, è

quindi necessario semplicemente abilitarla

dal pannello di amministrazione

(WooCommerce > Impostazioni > API)

• Dopodiché dovremmo generare una chiave di

autenticazione (sempre necessaria)

Page 28: WordPress REST API

Per iniziare…

Metodi, endpoint, autenticazione e tutto ciò che serve è ben documentato qui: http://

woothemes.github.io/woocommerce-rest-api-docs/

Page 29: WordPress REST API

Per iniziare…

Per lavorare invece con le API di WordPress

abbiamo principalmente due opzioni:

• Utilizzare il plugin ufficiale WordPress REST

API (https://wordpress.org/plugins/rest-api/)

• Attivare il modulo JSON API di JetPack, che ci

permette di sfruttare le API di WordPress.com

Page 30: WordPress REST API

WordPress REST API

WordPress REST API è il progetto ufficiale di

WordPress.org, la cui infrastrutture è gia stata

integrata nel core dalla versione 4.4, e gli

endpoint verranno integrati molto presto.

Nonostante sia ufficialmente ancora in beta è

ampiamente stabile.

Documentazione: http://v2.wp-api.org

Page 31: WordPress REST API

WordPress REST API

Per attivarla è sufficiente installare ed attivare il

plugin disponibile nella directory ufficiale WordPress.org

Page 32: WordPress REST API

WordPress.com REST API

Le API di WordPress.com fanno parte del plugin

JetPack e per utilizzarle è necessario:

• Installare ed attivare JetPack

• Connettere JetPack con il proprio account

WordPress.com

• Attivare il modulo JSON API

Documentazione: https://

developer.wordpress.com/docs/api/

Page 33: WordPress REST API

WordPress.com REST API

Page 34: WordPress REST API

Per iniziare…

• Entrambe permettono di operare su post,

utenti, categorie

• Entrambe sono estensibili, per esempio

possiamo aggiungere il supporto per Custom

Post Types nelle chiamate API oppure

aggiungere i campi personalizzati

• Entrambe permettono alcune chiamate (GET)

senza autenticazione

Page 35: WordPress REST API

Allora proviamoci!

https://public-api.wordpress.com/rest/v1.1/

sites/francescocarlucci.com/posts/

Page 36: WordPress REST API

Rendiamolo leggibile

Page 37: WordPress REST API

Grazie a tutti!

A cura di: Francesco Carlucci https://francescocarlucci.com