Stiamo sviluppando un'integrazione WordPress basata sulla minima dipendenza da plugin di terze parti, per garantire controllo, sicurezza e autonomia. Nel frattempo, l'ecosistema WordPress deriva sempre più verso una logica di business: plugin di base, con funzionalità molto limitate e versioni "professionali" a pagamento.
Il Plugin Loader consente di integrare funzionalità più complesse — organizzate in più file — all'interno di una struttura ordinata e manutenibile, e permette anche di rimuoverle.
Il Carousel Slider Block non dispone di supporto integrato per il Lightbox. La nostra soluzione consente di visualizzare le immagini aggiunte come diapositive, in una progressione naturale, all'interno di un overlay di tipo Lightbox, così come lo permette nativamente il Gallery Block.
L'editor Gutenberg presenta ancora importanti limitazioni nella modifica fine dei contenuti. Non è possibile assegnare un font diverso a una parola all'interno di un paragrafo, né inserire immagini in linea (inline).
Può sembrare un dettaglio minore, ma diventa fondamentale in casi specifici — come, ad esempio, aggiungere un'immagine all'interno di un piè di pagina. La mancanza di questa funzionalità ci ha spinto a sviluppare una soluzione propria.
Lo abbiamo realizzato come un'aggiunta leggera, rispettando la struttura e la logica del sistema di blocchi di WordPress.
Inoltre, abbiamo aggiunto il supporto per avere un maggiore controllo sul contenitore dei contenuti visualizzati all'interno di una Lightbox: poter impostare lo sfondo è fondamentale, e poterlo fare in modo semplice e rapido, ancora di più.
Abbiamo aggiunto un piccolo script al frontend che migliora l'esperienza utente nell'apertura delle sezioni del blocco accordion, assicurando che il contenuto attivato sia sempre ben posizionato per facilitare la continuazione della lettura.
Il Language Router aggiunge il supporto multilingue a un'installazione single di WordPress. Permette di stabilire e mantenere equivalenze tra pagine e altri contenuti (attualmente, pages e posts), nonché di importare il contenuto dalla versione originale per tradurlo.
Per il frontend, include un language switcher e soddisfa i requisiti SEO di base, come i link canonici (canonical), i tag hreflang e l'integrazione con i permalink, oltre al supporto per categorie, paginazione, ecc.
Questo plugin offre alle presenze web piccole e medie la possibilità di integrare il supporto multilingue senza la necessità di utilizzare plugin che, in molti casi, introducono paywalls e complessità inutile.
Oggi, con l'aiuto dell'intelligenza artificiale, mantenere un sito multilingue richiede soprattutto un sistema semplice e trasparente per gestire la struttura e le equivalenze — poco altro.
Il plugin funziona in combinazione con il nostro router linguistico e consente di tradurre o generare contenuto per una pagina o un articolo. Attualmente è possibile collegarlo alla propria IA preferita — Claude, OpenAI o Gemini —, anche se è facile aggiungere il supporto per altre opzioni se necessario. Inoltre, genera anche meta descrizioni ed estratti, se lo si desidera.
Forse questo non è così necessario, ma a noi dà molto fastidio l'overkill e il carico associato a font come Font Awesome e alla loro integrazione tramite CSS, ecc.
Abbiamo realizzato un piccolo modulo che consente di caricare un file di icone, che possono essere perfettamente estratte da Font Awesome (rispettandone la licenza — l'attribuzione deve essere presente all'interno del codice SVG).
In questo modo disponiamo di un set di icone leggero che, inoltre, può essere integrato direttamente come link.
La preparazione del file di icone richiede alcuni script aggiuntivi in Python o Node. Noi includiamo uno script molto rudimentale in Node, build-icons.js, che prepara un set di icone di Font Awesome per l'utilizzo con il blocco SVG Icon Button.
Tutto è pubblicato su Github. Il codice viene utilizzato sotto la vostra responsabilità.
Tutto è stato sviluppato con il supporto dell'intelligenza artificiale, ma ha richiesto revisioni e correzioni approfondite, oltre che tempo, per raggiungere un risultato minimamente accettabile e affidabile.
Il codice è migliorabile: attualmente svolge la sua funzione adattato alle nostre esigenze, ma non possiamo garantirne il funzionamento in altri contesti.
