ThemeKey

Ritratto di Vanni

Personalizzare un sito, per renderlo diverso dagli altri milioni, è essenziale. Modificare la grafica o la disposizione dei blocchi è una delle cose fondamentali da fare, soprattutto se non si usa un tema creato da noi ma ci si affida ad un tema messo a disposizione dalla community. 

Ma se vogliamo utilizzare più temi nello stesso sito? O se vogliamo che un utente possa scegliersi la grafica che preferisce per leggere le nostre pagine web? O se vogliamo che in base alla versione del browser dell'utente, venga visualizzato un diverso tema? 

Per tutto questo e molto, ma molto altro, c'è ThemeKey. E' un modulo estremamente potente e configurabile, con il quale possiamo fare in modo che, seguendo determinate "regole" ed impostazioni, ogni pagina, od ogni "gruppo" di pagine del nostro sito, possa essere visualizzata con un tema differente. Per tema differente, non intendo solamente il passare ad esempio da Bartik a Garland (cosa che potrebbe risultare poco gradevole), ma si possono creare dei sottotemi da un tema principale, in cui noi apportiamo lievi modifiche, in maniera da personalizzare le diverse sezioni del sito ma allo stesso tempo mantenere l'armonia.

Essendo un modulo altamente configurabile, esistono numerosi tutorial in rete, quindi io darò una semplice descrizione di come utilizzarlo, limitandomi a dare solo un paio di idee.

Come utilizzare il modulo ThemeKey

  • installare ed abilitare il modulo
  • pagina di abilitazione del modulo ThemeKey e dei suoi sottomoduli
  • come si può vedere il modulo è formato da molti altri "sottomoduli", per questa descrizione abiliterò solo il modulo principale
  • andare nella sua pagina di configurazione e cliccare su "Theme switching rule chain" in alto a destra
  • questa è la pagina dove andremo a "settare" le regole in base alle quali il tema del sito dovrà cambiare
  • il primo link è "Example" e ci dà dei suggerimenti su cosa e come si può intervenire per impostare le varie "regole"
  • prima parte della pagina di configurazione del modulo themekey
  • poi troviamo il link "Properties explained" tramite il quale apriamo un elenco con tutte le proprietà a cui potremo andare a mettere mano, ad esempio in base: alla lingua del sito, all'Url, alla data di creazione del nodo, ai termini di tassonomia, ai campi del nodo ecc... C'è solo l'imbarazzo della scelta
  • sotto troviamo il link "Operators explained", dove viene spiegato come utilizzare i vari "operatori" messi a disposizione 
  • infine abbiamo il form per l'inserimento delle regole per cambiare il tema
  • seconda parte della pagina di configurazione del modulo

Esempi pratici di come usare il modulo ThemeKey

Riporto un paio di idee/esempi su cosa può fare questo modulo.

Esempio 1: come personalizzare una sezione del sito in base all'Url delle pagine

In questo esempio voglio che tutte le pagine del sito, "figlie" della pagina "Menu amministratore", vengano visualizzate con un tema diverso. Quindi andrò a impostare una regola dove tutti gli Url che iniziano con "ilmiodrupal7.altervista.org/guida/menu-amministratore" adottino questa modifica.

  • leggere come funziona la proprietà "Drupal:path" in "Properties explained" 
  • selezionare la proprietà "Drupal:path" dalla lista di opzioni 
  • esempio 1, come impostare una regola per il modulo themekey
  • lasciare l'operatore su "=" (uguale) e poi inserire la path a cui applicare questa regola, alla fine ho inserito "%" che rappresenta un simbolo "wildcart" per tutti i caratteri (vedere descrizione della proprietà)
  • assegnare il tema che deve essere visualizzato
  • esempio 1, come assegnare una regola al modulo themekey
  • cliccare su "salva configurazione"
  • ora se vado nella pagina "Menu amministratore" la vedrò con il solito tema 
  • pagina del sito con tema non modificato dal modulo
  • mentre se vado in una sua pagina "figlia", essa verrà visualizzata con il tema "Bartik"
  • pagina del sito con tema modificato dal modulo themekey

Esempio 2: Come personalizzare i nodi in base alla loro data di pubblicazione

In questo esempio voglio che tutti i nodi pubblicati nel 2015 abbiano un tema diverso da quelli pubblicati nel 2014.

  • leggere come funziona la proprietà "node:created"
  • uso un convertitore Unix Timestamp per ricavare il valore di data e ora di inizio 2015 (nel mio caso 1420070399)
  • scelgo la proprietà dalla list del form, scelgo l'operatore ">=" (maggiore/uguale), infine inserisco il timestamp
  • secondo esempio di funzionamento del modulo themekey
  • salvo la configurazione
  • ora se vado ad aprire un nodo del 2014, trovo il normale tema del sito
  • pagine visualizzate con il tema classico del sito
  • mentre se apro un nodo creato nel 2015, esso viene visualizzato con il tema Bartik
  • nodo creato nel 2015, visualizzato con un tema diverso

 

Aggiungi un commento

Filtered HTML

  • Indirizzi web o e-mail vengono trasformati in link automaticamente
  • Elementi HTML permessi: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Linee e paragrafi vanno a capo automaticamente.

Comment

  • Elementi HTML permessi: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Linee e paragrafi vanno a capo automaticamente.
  • Indirizzi web o e-mail vengono trasformati in link automaticamente

Plain text

  • Nessun tag HTML consentito.
  • Indirizzi web o e-mail vengono trasformati in link automaticamente
  • Linee e paragrafi vanno a capo automaticamente.
Per tutelare la vostra privacy suggerisco l'uso di un nickname o lasciare anonimo...
CAPTCHA
Questa domanda e' per testare se sei un visitatore persona e non un software che genera spam
7 + 11 =
Risolvi la semplice domanda di matematica e inserisci il risultato. Es. se e' 1 + 3 inserisci 4.