WordPress: un’introduzione

18 maggio 2016

Nato come piattaforma di blogging, oggi WordPress permette di sviluppare ogni tipo di sito Web, dai blog personali, agli e-commerce più avanzati; il CMS ha infatti alla base un framework che ne ha fatto un ambiente di sviluppo per ogni sorta di applicazione Web. Le sue caratteristiche fondamentali sono la semplicità d’uso e la flessibilità della struttura a vantaggio degli sviluppatori. La complessità viene gestita dal framework, che rende disponibile un tool di API tramite le quali è possibile estendere WordPress.

Figura 1. WordPress.

WordPress dashboard

Le funzionalità core di WordPress

Le funzionalità core di WordPress sono legate sia all’utilizzo che allo sviluppo, a quelle di base si sommano poi funzionalità aggiuntive grazie alle migliaia di estensioni gratuite e commerciali.

Istallare WordPress e pubblicare contenuti online è questione di pochi attimi. L’architettura di base dispone di post per i contenuti dinamici e pagine per i contenuti statici, ma questa impostazione può rapidamente essere estesa con tipi di contenuti personalizzati, metadati e tassonomie. È possibile infatti importare con pochi click i contenuti da una serie di altre piattaforme, come Blogger, Tumblr e TypePad.

Non tutti gli utenti del sito hanno gli stessi privilegi, e WordPress, come ogni CMS avanzato, permette di assegnare capacità specifiche ad ogni ruolo utente. Di base, WordPress dispone di sei ruoli predefiniti:

  • Super Admin (solo WordPress Multisite).
  • Administrator.
  • Editor.
  • Author.
  • Contributor.
  • Subscriber.

Il set di ruoli non è rigido e grazie ai plugin l’utente può aggiungerne di nuovi e modificare le combinazioni di capacità assegnate ad ognuno di essi.

Il sistema di gestione di immagini e file mediali è semplice nell’utilizzo e avanzato nelle funzionalità. Per l’utente caricare media è operazione immediata grazie al supporto del Drag & Drop e a funzionalità di editing che permettono di modificare le immagini ridimensionandole e tagliandole tramite la comoda interfaccia grafica del pannello di amministrazione in base alle più diverse esigenze.

I temi sono le estensioni grafiche di WordPress. Esistono migliaia di temi gratuiti e a licenza commerciale, sviluppati per esigenze generiche e per obiettivi specifici.

I plugin sono invece le estensioni funzionali di WordPress. Come per i temi, esistono migliaia di plugin gratuiti e commerciali, che permettono a WordPress di gestire eventi, località geografiche, archivi di ogni tipo, negozi virtuali e quant’altro. Nessun limite conosciuto. WordPress notifica la disponibilità di nuove versioni di temi e plugin, e permette di prelevarli dalla repository senza mai abbandonare il pannello di amministrazione.

WordPress dispone di un sistema di commenti integrato, nessun plugin è necessario per mettere in opera un sito dotato di un sistema di discussione completo ed estremamente semplice da gestire.

WordPress nasce ottimizzato per i motori di ricerca, anche se l’amministratore del sito può migliorare questo aspetto grazie ai numerosi plugin disponibili nella repository. La lingua base è l’inglese, ma WordPress è disponibile in oltre 70 lingue.

WordPress è un software Open Source rilasciato con licenza GPL la quale prevede che ogni opera derivata debba essere rilasciata con lo stesso tipo di licenza. Ciò significa che si può estendere il CMS con temi e plugin, i quali possono essere ceduti commercialmente ma devono essere distribuiti sotto GPL. Se WordPress è il CMS più diffuso al mondo lo si deve anche all’attiva comunità di utenti e sviluppatori.

Funzionalità per gli sviluppatori

Il sistema di API di WordPress presenta circa una ventina di interfacce costituite da metodi e funzioni che eseguono operazioni specifiche su database, file system, dati e UI. Il sistema di API permette di sviluppare plugin e temi in modo indipendente aggiungendo funzionalità e servizi terzi al core del CMS.

Grazie all’Application framework di WordPress lo sviluppatore può dedicarsi esclusivamente alle funzionalità core delle proprie applicazioni, senza riprogettare il sistema di gestione degli utenti, localizzazione dell’ambiente di lavoro, richieste HTTP, accesso al database e gestione delle sessioni.

WordPress dispone di 5 tipi di contenuti base:

  • Post.
  • Page.
  • Attachment.
  • Revision.
  • Navigation menu.

A questi tipi predefiniti possono essere aggiunti un numero arbitrario di custom post types gestibili separatamente dai contenuti predefiniti. Possono essere, così, creati tipi specifici per eventi, località, portfolio e progetti. Metadati e tassonomie permettono di abbinare al contenuto principale dati aggiuntivi ed etichette semantiche che completano l’architettura dell’informazione.

jQuery, jQuery UI, Underscore.js, Backbone.js, Prototype, Tickbox e Plupload sono solo alcune delle librerie JS disponibili per gli sviluppatori, con esse WordPress si propone come uno dei più completi ambienti di sviluppo disponibili in Rete.

L’evoluzione di WordPress

WordPress evolve di continuo, e gli ultimi sviluppi vedono il CMS diventare un framework di sviluppo. Ma quali sono le novità più significative?

L’inclusione nel core della REST API accresce le possibilità di distribuzione dei contenuti e di controllo a distanza dei siti. Siano questi ospitati da WordPress.com o self-hosted le possibilità sono le stesse: post, pagine, commenti, tag, categorie, statistiche, notifiche, impostazioni, profili utente possono essere gestiti in lettura o scrittura tramite richieste GET e POST. Inviare una richiesta si riduce nella trasmissione di una URL contenente una serie di parametri. Alla richiesta WordPress risponderà inviando una risposta in formato JSON, che potrà essere gestita attraverso un linguaggio lato client o server.

Figura 2. REST API plugin.

REST API plugin

a tal proposito è possibile citare Calypso, un sistema di gestione accentrata di tutti i siti “WordPress Powered” tramite un unico pannello di amministrazione basato sulla REST API e sviluppato interamente in JavaScript. Per utilizzare Calypso basta avere un account su WordPress.com, istallare il plugin Jetpack e iniziare a gestire tutti i propri siti da un unico ambiente di lavoro.

Figura 3. Progetto Calypso

Calypso dashboard

L’introduzione della REST API si basa sull’utilizzo di librerie JavaScript, lo sviluppo dell’interfaccia rimarrà appannaggio di JavaScript e delle più recenti librerie come ReactJS, AngularJS e Node.js. Sono già diverse le applicazioni per WordPress sviluppate con React, tra le quali il tema ufficiale Twenty Sixteen considerabile più una WebApp che un classico tema di WordPress.

Figura 3. ReactJS.

ReactJS

La gestione dei dati attraverso la REST API, la visualizzazione attraverso le librerie JavaScript, i vantaggi degli ultime tecnologie standard, come il Local Storage e i Web Workers, lasciano bene intendere che WordPress si trova in un momento di rottura rispetto al passato.

Tutte le lezioni

 

1 2 3... 92

Se vuoi aggiornamenti su WordPress: un'introduzione inserisci la tua e-mail nel box qui sotto:
Tags: ,
 
X
Se vuoi aggiornamenti su WordPress: un'introduzione

inserisci la tua e-mail nel box qui sotto:

Ho letto e acconsento l'informativa sulla privacy

Acconsento al trattamento dei dati per attività di marketing