Ottimizzazione Immagini Drupal con Thumbor
29 novembre 2025
Ottimizzazione Immagini Drupal con Thumbor: Il mio nuovo modulo
Ho sviluppato un nuovo modulo per Drupal perché, sorprendentemente, non esisteva ancora una soluzione robusta per integrare Thumbor direttamente con il popolare modulo imageapi_optimize.
Il modulo si chiama Image Optimize - Thumbor (imageapi_optimize_thumbor) e nasce per colmare questa lacuna, offrendo una soluzione performante per siti web ad alto traffico che gestiscono grandi quantità di immagini.
A cosa serve?
Questo modulo integra il servizio di ottimizzazione immagini Thumbor con il modulo imageapi_optimize di Drupal. Permette a Drupal di utilizzare un server Thumbor esterno per eseguire manipolazioni e ottimizzazioni delle immagini (come ridimensionamento, ritaglio e applicazione di filtri) e servire queste immagini ottimizzate agli utenti.
Caratteristiche Principali
- Integrazione con Image Optimize: Funziona come un plugin "processor" per il modulo
imageapi_optimize, permettendoti di aggiungere Thumbor a qualsiasi pipeline di ottimizzazione immagini esistente. - Comunicazione con Server Thumbor: Gestisce la comunicazione con il tuo server Thumbor configurato per richiedere le immagini ottimizzate.
- Supporto Security Key: Supporta la funzionalità di chiave di sicurezza di Thumbor, essenziale per firmare gli URL delle immagini e prevenire manipolazioni non autorizzate.
- Integrazione Diretta con gli Stili Immagine: Si integra nativamente con gli stili immagine di Drupal. Quando viene richiesto uno stile immagine, il modulo intercetta la richiesta e genera l'immagine utilizzando il servizio Thumbor.
Come Funziona
Il flusso di lavoro è semplice e integrato nell'interfaccia di Drupal:
- Configurazione: L'amministratore del sito configura una "Image Optimize pipeline" nell'interfaccia di Drupal.
- Aggiunta del Processore: All'interno della pipeline, si aggiunge il processore "Thumbor" fornito da questo modulo.
- Setup: Si configura il processore inserendo l'URL del server Thumbor e (opzionalmente ma consigliato) la chiave di sicurezza.
- Richiesta Immagine: Quando viene renderizzata una pagina con un'immagine che usa questa pipeline, il modulo costruisce l'URL speciale che punta al server Thumbor.
- Elaborazione: Il server Thumbor riceve la richiesta, recupera l'immagine originale dal sito Drupal, applica le ottimizzazioni (es. resize, crop) e restituisce l'immagine ottimizzata al browser dell'utente.
Dipendenze e Servizi
Il modulo dipende da:
- Image API Optimize (
imageapi_optimize): Il modulo core che fornisce il sistema di pipeline. - Image (
image): Il modulo immagine core di Drupal.
Il cuore della logica risiede nel servizio imageapi_optimize_thumbor.thumbor_service (Drupal\imageapi_optimize_thumbor\Service\ThumborService), che è responsabile della costruzione degli URL Thumbor e dell'interazione con il server, utilizzando i servizi entity_type.manager e file_system di Drupal.
Nota Importante sulla Configurazione
Attualmente, il modulo supporta specificamente la configurazione THUMBOR filesystem. Questo significa che è ottimizzato per scenari in cui Thumbor è configurato per leggere le immagini sorgente direttamente da un filesystem condiviso o accessibile.
Disponibilità
Ho pubblicato il codice del modulo su Drupal.org. Il progetto è open source e sono aperto a contribuzioni, segnalazioni di bug e suggerimenti per nuove funzionalità.
Puoi trovare il modulo qui: