L’utilizzo di WordPress come piattaforma “universale” per i propri siti e servizi web è, al giorno d’oggi, un dato di fatto riscontrabile per molte realtà del settore internet: sempre più portali aziendali, quotidiani online, siti di notizie e servizi di vario genere tendono ad utilizzare WP come CMS.
Per quanto il sistema non si presti, nativamente, ad operazioni di questo genere, e sorvolando sulle considerazioni tecniche sulla sua scarsa modificabilità (bisogna ricorrere per forza ad hook e action anche per le modifiche più basilari, ad esempio), senza contare il modo un po’ grossolano con il quale molti ci lavorano, passiamo a considerare quelli che sono un’autentica “forza della natura” per rendere il sito in WordPress davvero personalizzato.
Quando si parla di framework WordPress, in questo frangente, si fa riferimento ad un tipo particolare di software, a volte a pagamento altre gratuito, che permette di estendere le funzionalità di base: l’ambiente, di suo, non offre molto più che un sistema di pubblicazione pagine, uno analogo per pubblicare immagini ed articoli, eventualmente link: a parte qualche altro piccolo dettaglio, anche l’impostazione SEO più basilare richiede un plugin, non presente in modo nativo.
Un esempio semplice: OFT
I framework WordPress estendono le operazioni ammesse nel sito in modo semi-automatico, ed il modo migliore per capire questo aspetto è prendere in considerazione Option Framework Theme (OFT). È free ed open source: installandolo, sarà possibile creare delle pagine di opzioni lato backend. I nostri clienti potranno trovarle molto comode e, soprattutto, potremo realizzare pagine personalizzate nel dettaglio: cosa che, senza questo add-on, sarebbe decisamente contorta e faticosa.
OFT si installa caricando semplicemente, via FTP, una singola cartella nel theme child che stiamo usando; permette così di gestire le pagine di opzioni agendo semplicemente su dei gruppi di variabili PHP strutturate. Basta crearne una, per intenderci, e ci ritroveremo quell’opzione in una pagina di opzioni di WordPress, con tanto di etichetta, tipo (lista, casella di testo, radio button ecc.), ed eventuale valore predefinito. Su GitHub trovate le istruzioni dettagliate e le indicazioni su come programmare in modo rapido e funzionale questa componente, ammesso che vi serva un pannello di opzioni lato backend.
Un altro framework molto potente: Redux
Un secondo, e leggermente più complesso, esempio di framework WordPress molto interessante, è a mio avviso Redux, che permette di estendere in qualsiasi direzione le funzionalità del sito senza ricorrere a pesanti plugin. Redux permette di modificare “geneticamente” il theme, adattandolo alle esigenze più diverse e sfruttando un meccanismo potente e flessibile che alcuni già prevedono (ad esempio Engrave e WP Tube). A che cosa serve Redux? Le risposte sono tante: può rendere WordPress una piattaforma “alla Youtube”, farci integrare più semplicemente Bootstrap (la dannazione di molti web designer…), mettere a disposizione un compilatore LESS integrato, o ancora fornire servizi aggiuntivi come quelli esposti nello showcase di Envato.
Perchè framework e non, semplicemente, plugin?
La domanda a questo punto sorge spontanea: da cosa nasce l’esigenze dei framework piuttosto che la solita serie di plugin? Le ragioni sono varie: al di là di un discorso di manutenibilità ed efficenza (più plugin installiamo, peggio è nel lungo periodo: bug, falle scoperte, incompatibilità con le nuove versioni di WP), i framework sono estensioni robuste di WordPress che permettono di mettere mano alle funzioni avanzate, e questo in modo (relativamente) più intuitivo di quanto non avvenga coi plugin. Questi ultimi, di fatto, offrono spesso funzionalità limitate, oltre a stabilire una dipendenza che è troppo semplice da violare: basta disinstallare il pugin, infatti – spesso senza rendersene conto – per generare errori nel codice, e far crollare il “castello” che abbiamo costruito. I framework, al contrario, si installano in modo più articolato, ed è meno probabile che l’utente medio riesca, anche inavvertitamente, a “fare danni”.