Processwire è un Content Management System (Sistema per la gestione dei contenuti) Open Source sviluppato da Ryan Cramer ed il suo team ed è particolarmente apprezzato per la sua potenza, scalabilità, consistenza e semplicità d'utilizzo. Ci piace definirlo un "CMS per sviluppatori" in quanto permette una customizzazione molto avanzata lato frontend, con un'interfaccia minimale e pulita sia dal punto di vista del design che delle funzionalità nel backend.

Perché abbiamo scelto Processwire

In qualsiasi team di sviluppo è importante avere fin dal principio una chiara definizione dello stack tecnologico, dei framework e degli strumenti (software, tools, ecc.) che si andranno ad adottare in fase di creazione dei progetti, in modo da creare una squadra con le giuste competenze. In materia di sviluppo di siti web, generalmente le categorie di progetto che ci capita di realizzare sono di due tipi:

  • siti web vetrina - ovvero delle pagine istituzionali con la presentazione di una determinata azienda e dei servizi o prodotti che essa è in grado di offrire al mercato
  • siti web e-commerce - cioè i portali in cui è possibile acquistare direttamente i servizi o i prodotti dell'azienda con tutte le dinamiche del caso (carrello, checkout, pagamenti, spedizioni, ecc.)

Per i progetti riguardanti la creazione di siti web vetrina, necessitavamo di un CMS che rispondesse ai seguenti requisiti:

  • deve essere una soluzione Open Source basata su linguaggio PHP
  • deve essere scalabile e le sue funzionalità devono poter essere estese mediante API o dei plugin
  • deve dare all'utente la possibilità di lavorare sull'ottimizzazione SEO del sito
  • deve poter essere adeguato agli standard imposti da Google in termini di velocità di caricamento delle pagine ed user experience
  • deve avere un'interfaccia semplice e una curva d'apprendimento bassa per quanto riguarda il data entry dei contenuti da parte dell'utente
  • deve dare la possibilità di gestire diversi livelli di accesso (admin, editor, ecc.)
  • deve poter gestire i contenuti in due o più lingue diverse nei siti multilingua
  • deve essere sicuro e difficilmente soggetto a falle o attacchi da parte di malintenzionati

La nostra scelta è ricaduta su Processwire perché, oltre a rispettare i punti elencati sopra, presenta tutti i vantaggi descritti nel paragrafo seguente.

processwire-back-end-homepage.jpeg

I vantaggi di Processwire

Processwire si basa su 6 principi cardine che determinano le caratteristiche del CMS e i vantaggi che derivano dal suo utilizzo. Essi sono: Adattabilità, Semplicità, Affidabilità, Velocità, Flessibilità, Completezza.

Adattabilità

Tutto è progettato per consentire la progettazione di ogni tipologia di sito web, dal più semplice al più strutturato, dalla landing page al sito con milioni di pagine grazie a features quali campi personalizzati, plugin, supporto multi-lingua nativo e molto altro ancora.

Semplicità

Processwire è apprezzato sia dai developer, sia dai webmaster fino ai content editor per la bassa curva di apprendimento. L'interfaccia di amministrazione presenta solamente gli elementi necessari alla modifica delle pagine eliminando qualsiasi distrazione, consentendo all'utente di concentrarsi solo sulle modifiche necessarie. La rappresentazione visuale dell'alberatura permette di comprendere a colpo d'occhio l'architettura del sito e già dal primo accesso si riesce a prendere familiarità con le funzioni chiave del sistema quali l'aggiunta di nuove pagine, la modifica dei contenuti, la pubblicazione delle pagine, ecc.
L'ampio supporto alle API, la necessità pressapoco minima di manutenzione e la facilità di aggiornamento sono altre caratteristiche che fanno la gioia degli sviluppatori che decidono di approcciarsi a questo CMS.

Affidabilità

Parlando di affidabilità parliamo di sicurezza e solidità. A 15 anni dalla sua creazione Processwire non ha mai conosciuto significativi incidenti relativi alla sicurezza. Lato backend, vi è anche un supporto integrato all'autenticazione a due fattori in modo da prevenire accessi indesiderati e non riconosciuti. Queste caratteristiche lo rendono uno dei CMS open source più affidabili al mondo.

Velocità

Le performance sono un fattore di fondamentale importanza nel web che conosciamo oggi. Processwire è un sistema che nasce per essere leggero e veloce sia lato backend che frontend ed infatti presenta un sistema di chaching integrato. Se questo non dovesse bastare è possibile installare in qualsiasi momento dei plugin dedicati alla gestione avanzata della cache.

Flessibilità

La struttura sulla quale si basa Processwire è basata su due semplici elementi: pagine e template. Questi sono in stretta relazione tra di loro, nel senso che un template definisce la struttura ed i campi delle pagine a cui viene assegnato. Il concetto di pagina, inoltre, non si limita all'alberatura del sito ma viene esteso a tutto il sistema con il vantaggio che ogni elemento, sia di frontend che di backend, è organizzato all'interno del CMS e richiamabile tramite un URL. Gli sviluppatori amano questo tipo di logica perché fa sì che le pagine possano essere messe in relazione tra di loro in modalità una ad una oppure una a molte, come avviene in un database relazionale, arrivando ad un livello di flessibilità che con altri CMS non sarebbe mai possibile.

Completezza

Processwire è un sistema completo perché possiede molti strumenti integrati per l'editing dei contenuti come:

- un editor di rich text che consente di formattare i testi a nostro piacimento, inserire link sia interni che esterni, inserire codice HTML personalizzato e molto altro ancora.
- un tool per le modifiche sulle immagini quali ridimensionamento, taglio, filtri e altro ancora.
- il supporto nativo al formato GIF

Per tutto il resto, è possibile estendere in ogni momento le sue funzionalità tramite i plugin.

 

Processwire vs Wordpress

Parlando di CMS è impossibile non citare il più famoso al mondo: Wordpress.

I suoi punti di forza rispetto a Processwire sono la grande popolarità (si conta che circa il 45% dei siti web su internet siano fatti con wordpress), il numero di plugin per fare qualsiasi cosa in costante aumento e una community numerosissima di sviluppatori ed utilizzatori. Tramite Wordpress inoltre, è possibile mettere in piedi in pochi minuti un blog funzionante con tutte le dipendenze del caso (post, categorie, pagine archivio, ecc.) pronte all'uso.

Se tutta questa centralità è un pro dal punto di vista della diffusione del sistema tra gli utenti di tutto il mondo, dall'altro canto rappresenta un contro per quanto riguarda la sicurezza. Wordpress infatti è il CMS più soggetto ad attacchi hacker e se le vulnerabilità imputabili al core sono sempre meno diffuse grazie ai costanti aggiornamenti, i plugin restano dei punti scoperti tramite i quali i malintenzionati possono infettare e compromettere un sito.

Inoltre, dal punto di vista dello sviluppo, padroneggiare le logiche e le funzionalità di Wordpress richiede molto tempo ed uno studio approfondito della sua documentazione ufficiale. Processwire su questo fronte si presenta come un sistema "pronto all'uso" ed addentrarsi nel suo funzionamento per iniziare a creare i nostri progetti è davvero semplice anche per uno sviluppatore PHP entry-level, consentendo di risparmiare tempo, e quindi denaro, nel processo di lavoro.

Tutte le differenze rispetto a Wordpress sono state riassunte dal team di Processwire in questo articolo.

 

Guarda qui alcuni progetti realizzati da noi su Processwire oppure contattaci per una consulenza, saremo felici di guidarti nella scelta migliore per il tuo progetto web.

Newsletter