Views 3 e Grid system (patch)

 

Ultimamente, lavorando con Omega in diversi siti, mi è capitato di dover fare un pò di "magie" per riuscire ad ottenere il risultato desiderato. Il problema principale che ho riscontrato è che le views permettono di aggiungere classi ai singoli field, al wrapper della vista stessa, o una classe uguale per tutti le righe, ma non permette di inserire classi personalizzate per ogni riga. Questo, nelal versione per Drupal 6 e views 2, era risolvibile ricorrendo a Semantic Views, ma per Views 3 non abbiamo ancora uno strumento che ci permette di fare quanto richiesto. Per risolvere questo problema ho scritto una piccola patch (attenzione, non mi assumo responsabilità in merito :) ) che permette di definire per ogni singola riga, o per righe particolari (prima/ultima, pari/dispari) delle classi specifiche. Vediamo come applicare questa patch e come funziona.

Per applicare la patch la strada più comoda è di prelevare le informazioni direttamente dal GIT e applicarla con git stesso, in particolare:

git clone --branch 7.x-3.x http://git.drupal.org/project/views.git
cd views
git checkout 7.x-3.0-beta3
wget http://drupal.org/files/views-rows-class-1188216-1.patch
git apply -v views-rows-class-1188216-1.patch

Dove abbiamo provveduto a scaricarci la versione 3.0-beta3 di Views (la versione attualmente pubblicata), abbiamo scaricato la patch che si trova sul sito di Drupal e quindi abbiamo proceduto ad applicare la patch ai sorgenti scaricati.

In alternativa è possibile scaricare il pacchetto disponibile sul sito drupal.org e sostituire il file presente nella directory plugins con il file views_plugin_style.inc che trovate in allegato a questo articolo.

Una volta applicato possiamo usare i file così ottenuti come versione di views. Attivando il modulo, ed entrando nella views che ci interessa, possiamo vedere che all'interno dei settings del sistema di visualizzazione che abbiamo:

dei nuovi settaggi:

In particolare possiamo impostare le classi agli elementi indicati precedentemente.

Questo viene particolarmente comodo nel caso in cui dobbiate applicare (ad esempio) al primo ed ultimo elemento della vista le classi alpha e omega piuttosto che voler applicare classi griglia differenti ad elementi diversi della vista.

Come sempre commenti e critiche sono graditi :)

AllegatoDimensione
views_plugin_style.inc13.3 KB

Altri contenuti che potrebbero interessarti

  • Drupal è uno dei migliori CMS (la versione 4.7 è giunta seconda al contest internazionale, subito dopo Joomla, ma con la versione 5 probabilmente si avrà il balzo al primo posto!) in circolazione per la realizzazione di siti nato nel 2001 e giunto ormai alla sua quinta versione...
  • Esempio di vista generata dall'integrazione del nostro modulo con views
    Alzi la mano chi non ha mai usato views. Alzi la mano che l'ha mai usato. Ok, non proprio tutti ma buona parte di voi ha alzato la mano, questo perchè è sicuramente uno strumento potentissimo per la visualizzazione delle informazioni, quindi è fondamentale (o comunque molto utile) andare ad...
  • Interfaccia di esempio per la selezione tramite autocompletamento in cascata
    Come spesso capita si utilizzano select per andare a far effettuare delle scelte agli utenti, e come abbiamo visto precentemente è possibile usare le funzionalità ajax per fare in modo che delle select secondarie varino in funzione della prima scelta. Cosa succede, invece, quando si hanno centinaia...
  • La volta scorsa, nel parlare di ottimizzazione del frontend di siti generici (e Drupal in particolare) avevamo affrontato alcune delle problematiche principali, tra cui appunto la generazione di sottodomini per lo smistamento degli asset statici [1], così da parallelizzare il più possibile il...

Commenti

Ritratto di gp

Ottimo...

...mi segno il tutto e domani provo!

Invia nuovo commento





  • Elementi HTML permessi: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <h2> <h3> <h4> <table> <thead> <tbody> <tr> <th> <td>
  • You may post code using <code>...</code> (generic) or <?php ... ?> (highlighted PHP) tags.
  • Linee e paragrafi vanno a capo automaticamente.
  • Indirizzi web o e-mail vengono trasformati in link automaticamente

Maggiori informazioni sulle opzioni di formattazione.



Condividi contenuti