logo

Extra Block Types (EBT) - Nuova esperienza con Layout Builder❗

Extra Block Types (EBT) - tipi di blocchi stilizzati e personalizzabili: Slideshows, Tabs, Cards, Accordion e molti altri. Impostazioni integrate per sfondo, DOM Box, plugin javascript. Vivi oggi il futuro della costruzione dei layout.

Demo moduli EBT Scarica moduli EBT

❗Extra Paragraph Types (EPT) - Nuova esperienza con Paragraphs

Extra Paragraph Types (EPT) - insieme di moduli basati su paragrafi in modo analogo.

Demo moduli EPT Scarica moduli EPT

Scorri

Tematizzazione di Views: modifica dei template view.tpl.php (campi, righe, blocchi, pagine). Integrazione del plugin jQuery EasySlider

14/10/2025, by Ivan

In questo articolo analizzeremo il costruttore di query per Drupal — il modulo Views (http://drupal.org/project/views). Views consente di visualizzare campi di diversi tipi di contenuti, commenti, termini, informazioni sugli utenti e altri dati dal database. Inoltre, questo modulo dispone di un’interfaccia grafica che permette di creare facilmente query al database con il mouse.

Attenzione! Se vuoi utilizzare EasySlider subito, ti consiglio di installare il modulo dedicato. Questo articolo è pensato principalmente per capire il funzionamento dei template di Views e la loro tematizzazione. Per configurare correttamente l’aspetto di EasySlider dovrai comunque modificare il CSS.

Dopo aver configurato i campi necessari, bisogna disporli come desideriamo. Per farlo, si utilizzano i file di template di output. Per impostazione predefinita, i template si trovano nella cartella del tema.

Impostiamo ora il plugin jQuery EasySlider per i dati visualizzati tramite il modulo Views. Esiste già un modulo pronto per l’integrazione di EasySlider con Views — puoi trovarlo qui: http://drupal.org/project/easySlider.

Se desideri semplicemente visualizzare le immagini come slider, puoi installare quel modulo e il gioco è fatto. Tuttavia, in questo articolo impareremo a lavorare manualmente con i template di Views.

Per iniziare, dobbiamo installare i moduli Views, CCK e ImageCache, oltre a scaricare i file del plugin EasySlider da qui o da altri siti. Successivamente vedremo come installare il plugin nel tema di Drupal, ma prima configureremo i campi CCK.

I moduli sono pronti, iniziamo:

1. Creiamo un nuovo tipo di contenuto.

Drupal Views

Aggiungiamo un campo per il caricamento delle immagini e salviamo. Possiamo anche spostare il campo più in alto nell’ordine di visualizzazione.

Drupal content type

Impostiamo un numero illimitato di immagini e aggiungiamo anche una descrizione per ciascuna immagine.

Impostazioni generali

2. Creiamo un nodo (contenuto) del tipo “Banner” e carichiamo un paio di immagini da utilizzare nello slider.

3. Creiamo un preset per le immagini che vogliamo visualizzare. Nel mio caso sarà di 200x200 pixel, ma puoi impostare qualsiasi dimensione.

ImageCache

Aggiungiamo un effetto di ridimensionamento e ritaglio (“Scale and crop”) con le dimensioni desiderate:

Add scale and crop

4. Ora siamo pronti a mostrare le immagini tramite Views in un blocco.

Creiamo una nuova vista (view):

Drupal View

Aggiungiamo il campo “Immagini”:

Add field

Nelle impostazioni, disattiviamo la raggruppazione dei valori, rimuoviamo il titolo del campo e impostiamo il preset di immagine creato in precedenza.

Add field Views

Nei filtri impostiamo:
Contenuto: Pubblicato –
Contenuto: Tipo – Banner

In “Basic settings” impostiamo:
Style: HTML List

Aggiungiamo una visualizzazione in blocco.

Views

Nel preview dovrebbero apparire le immagini del banner.

5. Aggiungiamo il blocco della view in una regione del tema e verifichiamo il risultato.

Drupal slideshow

Non sembra ancora uno slider. Procediamo con l’installazione di EasySlider.

6. Estraiamo il file easySlider1_5.zip. Nella cartella del plugin troveremo esempi di funzionamento; useremo il secondo esempio (2.html). Copiamo il CSS nel file style.css del nostro tema e le immagini nella cartella images del tema.

Il file easySlider1.5.js si trova nella cartella js del plugin — copiamolo nella cartella js del nostro tema. Per collegarlo, modifichiamo il file nome_tema.info aggiungendo la riga corrispondente. Dopo aver svuotato la cache, il file JS sarà collegato:

Drupal JS include

Aprendo il file JS, troverai le istruzioni sulla struttura HTML necessaria per far funzionare lo slider.

Ora analizziamo il nostro blocco con strumenti come Firebug (Firefox), Dragonfly (Opera) o DOM Inspector (Chrome). Io uso Firebug, perché è il più comodo.

DOM inspector

Come si vede, Views ha aggiunto molti div superflui. Per far funzionare lo slider, dobbiamo eliminarli.

8. Torniamo alla nostra view e clicchiamo su “Theme: Information”. Apparirà un elenco di template che possiamo modificare.

Views theme information

I template in grassetto sono quelli utilizzati di default, situati nella cartella theme del modulo Views. Accanto a ciascuno è mostrato il nome del file che possiamo creare per sovrascrivere il template. Ad esempio: views-view-fields--view-banner.tpl.php.

banner

Apriamo il file views-view-fields.tpl.php per capire la struttura:

Drupal template

Il contenuto è racchiuso in un ciclo foreach che itera su ogni campo. I separatori ($field->separator) non ci servono, quindi li rimuoviamo, ma in un file personalizzato per la nostra view: views-view-fields--view-banner.tpl.php, da salvare nella cartella del tema. Rimuoviamo anche $field->label e i div generati da $field->inline_html.

Dopo aver pulito il codice, aggiorniamo la cache e ispezioniamo il risultato:

Images

Ora i tag <li> sono più vicini alle immagini. Eliminiamo anche i tag span inutili:

drupal template

Dopo le modifiche, il codice risulta molto più pulito:

Template theming

Ora tutto appare meglio. Passiamo a un altro template per rimuovere ulteriori div:

<div class="view-content"><div class="item-list">

Creiamo il file views-view--view-banner.tpl.php nella cartella del tema e copiamo il contenuto da views-view.tpl.php. In questo file possiamo mantenere solo le sezioni necessarie (header, contenuto, footer, ecc.).

Drupal template

Rimuoviamo anche il blocco <div class="item-list"></div> creando il file views-view-list--view-banner.tpl.php.

PHP template

Per eliminare gli ultimi div superflui, modifichiamo il file block.tpl.php del tema (copialo dal modulo Block se non esiste) e aggiungiamo un contenitore con id="slider" tramite una condizione if basata su $block->delta:

block.tpl.php

Nel mio caso, la variabile del blocco banner è questa:

imagecache

Dopo aver svuotato la cache, la pagina dovrebbe apparire così:

Drupal lorem ipsum

Come si vede, la struttura HTML è corretta: <div id="slider"><ul><li>.

Ora aggiungiamo un breve script JavaScript per inizializzare lo slider:

Drupal templates

Il codice JS può essere aggiunto direttamente nel file page.tpl.php oppure in un file separato, ad esempio js/custom.js.

Il risultato: EasySlider funzionerà correttamente. Ti rimarrà solo da regolare il CSS per perfezionare l’aspetto.

Drupal slider

Naturalmente, nella maggior parte dei casi è più comodo utilizzare un modulo già pronto per gli slider o le gallerie. Tuttavia, se non esiste un modulo per il plugin jQuery che vuoi usare, ora sai come integrarlo manualmente nel tuo tema Drupal.