SlideShare a Scribd company logo
1 of 50
Download to read offline
WordPress:
da blogging system ad
application framework
Relatore
Lorenzo Giuffrida
Roma - 13/14 Giugno 2015
logiuffrida lorenzogiuffrida giuffrida.lorenzo@gmail.com
Website: www.lorenzogiuffrida.it
MI PRESENTO
web developer @Yithemes
DIFFUSIONE
DI WORDPRESS
Quanti siti web sono costruiti usando WordPress?
MARKET SHARE
Quasi 1 sito online su 4
(poco più del 23%) è costruito con WordPress
MARKET
SHARE
CMS
CHANGELOG
0.70
WordPress nasce
come blog system
WordPress è un blog system
WordPress è un CMS
CHANGELOG
3.0
CHANGELOG
4.3+
WordPress è un CMS
“
“The future of WordPress
is in social, mobile, and as
an application platform.
Matt Mullenweg
State of Word 2013
DEFINIZIONE DI
APPLICATION
PLATFORM
Un middleware per velocizzare
lo sviluppo di un’applicazione.
STANDARD WEB APP
Quali funzionalità devo implementare
“ogni volta” che sviluppo
un nuovo progetto?
USER
MANAGEMENT
Gestione di utenti, ruoli, permessi.
WOOCOMMERCE
È LA SCELTA
MIGLIORE!
La sua grande diffusione e la
flessibilità che lo caratterizzano
hanno permesso lo sviluppo di un
numero di plugin e temi tale da
renderlo adatto a praticamente ogni
progetto.
LOCALIZATION
In un mercato globale bisogna
offrire accesso a una vasta
platea di potenziali clienti.
MEDIA
MANAGEMENT
Una web app moderna fornisce
interazione utente.
Non solo testo, sempre più immagini,
video.
FRONT END
& BACK END
Gli utenti finali interagiscono con l’app
tramite la User Interface.
SPEED
La velocità di fruizione è il primo
parametro con cui l’utente giudica
la validità di una web app.
IL TEMPO È
DENARO
•	Non reinventare la ruota
•	Focus sul core della web app
PERCHÉ SCEGLIERE UNA
APPLICATION
PLATFORM
•	Per la disponibilità di librerie, addon,
script di terze parti
•	Aggiornamenti costanti
•	Sample code, guide e community di
user/developer
WORDPRESS
OUT OF THE BOX
•	User management
•	Media upload and management
•	Template engine (front end)
•	User friendly, customizable back end
WORDPRESS
DATABASE
•	Database schema
•	Custom post type
•	C.R.U.D. API
WORDPRESS
API
Core API
(shortcode, widget, HTTP, settings, …)
WORDPRESS FOR
WEB SERVICES
XML-RPC API
WP REST API (WP API)
REST
•	Representational State Transfer
•	Definisce solo delle linee guida
IDENTIFICAZIONE
DELLE RISORSE
Ciascuna risorsa deve essere identificata univocamente
URI è il metodo naturale al quale siamo già abituati
Esempi :
•	http://www.example.com/orders
•	http://www.example.com/orders/2011
•	http://www.example.com/orders?status=pending
UTILIZZO ESPLICITO
DEI METODI HTTP
Accedere alle risorse
usando solo metodi HTTP :
•	GET
•	POST
•	PUT
•	DELETE
RISORSE
AUTODESCRITTIVE
•	I principi REST non pongono alcun vincolo sulle modalità
di rappresentazione di una risorsa.
•	Opportuno usare uno standard adeguato (JSON; XML).
•	Rappresentazioni multiple, il client chiederà il formato
appropriato.
COLLEGAMENTI
TRA RISORSE
Eventuali collegamenti tra risorse devono essere
esplicitate nella rappresentazione della risorsa
stessa.
COMUNICAZIONE
SENZA STATO
•	Il risultato di una richiesta non
dipende dalle precedenti richieste.
•	Scalabilità: cluster di server che
possono rispondere alle richieste.
WP REST API
(WP API)
•	REST API via HTTP
•	JSON
•	Espone post, pagine, commenti,
custom post types..
WP REST API
HTTP VERBS
•	GET www.example.com/wp-json/posts
•	GET www.example.com/wp-json/posts?filter[s]=pretty
•	POST www.example.com/wp-json/posts/4
JSON RESULT
WORDPRESS
FOR MOBILE APPS
•	Oltre PHP
•	Back end per app native
•	Front end come opzione
•	Migliore esperienza mobile
•	JavaScript trend
WORDPRESS
EXTENSIBILITY
MVC pattern vs Plugin API
MVC PATTERN
USER
MODEL
CONTROLLERVIEW
UPDATES MANIPULATER
USESSEES
PLUGIN API
ACTION
FILTER
PLUGIN
PLUGIN FREE SU
WORDPRESS.ORG
PLUGIN PREMIUM
SUI MARKETPLACE
32.000 3.500
ESEMPI
•	WPML
•	YOAST
•	Gravity Forms
•	Visual Composer
•	W3 Total Cache
COME SCRIVO
CODICE PER WORDPRESS?
•	WordPress è open source
•	WordPress è PHP,
JavaScript, CSS
COSA SERVE PER FAR GIRARE
UN’APPLICAZIONE SU WORDPRESS?
•	Apache, Nginx, IIS.
•	Windows, Linux.
•	MySQL.
APPLICAZIONI E PLUGIN
•	Che tipo di applicazioni è
possibile costruire?
•	Fin dove posso personalizzare
WordPress con un plugin?
E-COMMERCE
•	WP E-commerce
•	WooCommerce
FORUM
•	BBPress
SOCIAL NETWORK
•	BuddyPress
ALTRI ESEMPI
•	s2Member
•	Booking system Pro
•	Job boards
•	e-learning/online courses
•	Custom applications
PERCHÉ
WORDPRESS?
•	Buona curva di apprendimento
•	Back end user-friendly
•	Diffusione della piattaforma
•	Community
•	Personalizzazione
•	Redditività
E GLI ALTRI
FRAMEWORK/
PLATFORM?
•	Rails
•	.NET
•	Django
•	Zend
•	CakePHP
•	Altri CMS
NON
È LA SCELTA MIGLIORE...
•	Per applicazioni non content-driven.
•	Applicazioni real-time.
•	Quando un’altra tecnologia/framework porta
al risultato più velocemente.
DOMANDE
&
RISPOSTE
GRAZIE

More Related Content

Similar to Giuffrida

RESTful "il web programmabile"
RESTful "il web programmabile"RESTful "il web programmabile"
RESTful "il web programmabile"Flavio Troia
 
WSO2 MASTER CLASS ITALIA #9 - Come creare API di successo
WSO2 MASTER CLASS ITALIA #9 - Come creare API di successoWSO2 MASTER CLASS ITALIA #9 - Come creare API di successo
WSO2 MASTER CLASS ITALIA #9 - Come creare API di successoProfesia Srl, Lynx Group
 
Pregi e difetti dei principali CMS Open Source
Pregi e difetti dei principali CMS Open SourcePregi e difetti dei principali CMS Open Source
Pregi e difetti dei principali CMS Open Sourcenois3
 
Introduzione alla localizzazione web
Introduzione alla localizzazione webIntroduzione alla localizzazione web
Introduzione alla localizzazione webQabiria
 
Seo e Web Marketing - 1 | WebMaster & WebDesigner
Seo e Web Marketing - 1 | WebMaster & WebDesignerSeo e Web Marketing - 1 | WebMaster & WebDesigner
Seo e Web Marketing - 1 | WebMaster & WebDesignerMatteo Magni
 
Seo e Web Marketing - 1 | WebMaster & WebDesigner
Seo e Web Marketing - 1 | WebMaster & WebDesignerSeo e Web Marketing - 1 | WebMaster & WebDesigner
Seo e Web Marketing - 1 | WebMaster & WebDesignerMatteo Magni
 
Lezione 8: Introduzione ai Web Service
Lezione 8: Introduzione ai Web ServiceLezione 8: Introduzione ai Web Service
Lezione 8: Introduzione ai Web ServiceAndrea Della Corte
 
Sviluppo di servizi REST per Android - Luca Masini
Sviluppo di servizi REST per Android - Luca Masini Sviluppo di servizi REST per Android - Luca Masini
Sviluppo di servizi REST per Android - Luca Masini Whymca
 
SVILUPPO DI SERVIZI REST PER ANDROID
SVILUPPO DI SERVIZI REST PER ANDROIDSVILUPPO DI SERVIZI REST PER ANDROID
SVILUPPO DI SERVIZI REST PER ANDROIDLuca Masini
 
Azure Web Apps: portare il tuo sito sul cloud
Azure Web Apps: portare il tuo sito sul cloudAzure Web Apps: portare il tuo sito sul cloud
Azure Web Apps: portare il tuo sito sul cloudDavide Benvegnù
 
Slides webinar Abstract "Pregi e difetti dei principali CMS Open Source"
Slides webinar Abstract "Pregi e difetti dei principali CMS Open Source" Slides webinar Abstract "Pregi e difetti dei principali CMS Open Source"
Slides webinar Abstract "Pregi e difetti dei principali CMS Open Source" Abstract Technology Agency
 
Asp.net web api reloaded
Asp.net web api reloadedAsp.net web api reloaded
Asp.net web api reloadedPietro Libro
 
Lezione WordPress Università degli Studi di Milano: Installazione e Gestione
Lezione WordPress Università degli Studi di Milano: Installazione e GestioneLezione WordPress Università degli Studi di Milano: Installazione e Gestione
Lezione WordPress Università degli Studi di Milano: Installazione e Gestionealessandro gasparotto
 
Working with http client rest apis and connection availability check
Working with http client rest apis and connection availability checkWorking with http client rest apis and connection availability check
Working with http client rest apis and connection availability checkMichele Aponte
 
Manuale EasyPHP e Wordpress
Manuale EasyPHP e WordpressManuale EasyPHP e Wordpress
Manuale EasyPHP e Wordpressalexperoni
 

Similar to Giuffrida (20)

WordPress REST API
WordPress REST APIWordPress REST API
WordPress REST API
 
RESTful "il web programmabile"
RESTful "il web programmabile"RESTful "il web programmabile"
RESTful "il web programmabile"
 
WSO2 MASTER CLASS ITALIA #9 - Come creare API di successo
WSO2 MASTER CLASS ITALIA #9 - Come creare API di successoWSO2 MASTER CLASS ITALIA #9 - Come creare API di successo
WSO2 MASTER CLASS ITALIA #9 - Come creare API di successo
 
WordPress SEO
WordPress SEOWordPress SEO
WordPress SEO
 
ASP.NET Web API
ASP.NET Web APIASP.NET Web API
ASP.NET Web API
 
Pregi e difetti dei principali CMS Open Source
Pregi e difetti dei principali CMS Open SourcePregi e difetti dei principali CMS Open Source
Pregi e difetti dei principali CMS Open Source
 
Introduzione alla localizzazione web
Introduzione alla localizzazione webIntroduzione alla localizzazione web
Introduzione alla localizzazione web
 
Seo e Web Marketing - 1 | WebMaster & WebDesigner
Seo e Web Marketing - 1 | WebMaster & WebDesignerSeo e Web Marketing - 1 | WebMaster & WebDesigner
Seo e Web Marketing - 1 | WebMaster & WebDesigner
 
Seo e Web Marketing - 1 | WebMaster & WebDesigner
Seo e Web Marketing - 1 | WebMaster & WebDesignerSeo e Web Marketing - 1 | WebMaster & WebDesigner
Seo e Web Marketing - 1 | WebMaster & WebDesigner
 
8a. Il web 2.0
8a. Il web 2.08a. Il web 2.0
8a. Il web 2.0
 
Lezione 8: Introduzione ai Web Service
Lezione 8: Introduzione ai Web ServiceLezione 8: Introduzione ai Web Service
Lezione 8: Introduzione ai Web Service
 
Sviluppo di servizi REST per Android - Luca Masini
Sviluppo di servizi REST per Android - Luca Masini Sviluppo di servizi REST per Android - Luca Masini
Sviluppo di servizi REST per Android - Luca Masini
 
SVILUPPO DI SERVIZI REST PER ANDROID
SVILUPPO DI SERVIZI REST PER ANDROIDSVILUPPO DI SERVIZI REST PER ANDROID
SVILUPPO DI SERVIZI REST PER ANDROID
 
Azure Web Apps: portare il tuo sito sul cloud
Azure Web Apps: portare il tuo sito sul cloudAzure Web Apps: portare il tuo sito sul cloud
Azure Web Apps: portare il tuo sito sul cloud
 
Slides webinar Abstract "Pregi e difetti dei principali CMS Open Source"
Slides webinar Abstract "Pregi e difetti dei principali CMS Open Source" Slides webinar Abstract "Pregi e difetti dei principali CMS Open Source"
Slides webinar Abstract "Pregi e difetti dei principali CMS Open Source"
 
Asp.net web api reloaded
Asp.net web api reloadedAsp.net web api reloaded
Asp.net web api reloaded
 
Lezione WordPress Università degli Studi di Milano: Installazione e Gestione
Lezione WordPress Università degli Studi di Milano: Installazione e GestioneLezione WordPress Università degli Studi di Milano: Installazione e Gestione
Lezione WordPress Università degli Studi di Milano: Installazione e Gestione
 
Web api 2.0
Web api 2.0Web api 2.0
Web api 2.0
 
Working with http client rest apis and connection availability check
Working with http client rest apis and connection availability checkWorking with http client rest apis and connection availability check
Working with http client rest apis and connection availability check
 
Manuale EasyPHP e Wordpress
Manuale EasyPHP e WordpressManuale EasyPHP e Wordpress
Manuale EasyPHP e Wordpress
 

Giuffrida