Strategie vincenti per temizzare il sito - mantenendo un buon stato mentale

7 contenuti / 0 new
Ultimo contenuto
Strategie vincenti per temizzare il sito - mantenendo un buon stato mentale

Il buon kipper ha solevato un argomento interessante: http://www.drupalitalia.org/node/11046#comment-35909 che mi piacerebbe approfondire qui. Prima o poi, nonostante tutti i moduli a disposizione, ci sarà qualcosa nella tema che abbiamo scelto che non ci piace. Quale sono allora le strategie vincenti (best practices)?

La tema
Meglio cercare un'altra più adatto alla nostre esegenze?
Altrimenti come posso modificare quello che ho?

I tipi di contenuto
Nel profilo standard di Drupal ci sono solo due, Page e Story. Ma è meglio avere pocchi, pocchissimi, o creare tanti quanto necessario?

Gli template
Tramite i template suggestions, posso creare una vasta gamma di template. E' una buon idea questo?

Le funzioni
Tramite l'overriding, posso creare funzioni per temizzare quasi tutti i dati di Drupal. E posso creare nuovi variabili per i miei template tramite le funzioni di preprocessing. E' una buon idea questo?

Ready, steady, go!
Bene, tanti domande. Siamo pronti con i nostri suggerimenti? Non è obbligatorio rispondere a tutte le domande, basta mettere la voce principale (in grassetto) e poi dire la nostra. Manca una domanda alla quale vuoi rispondere? Aggiungilo. Manca una voce? Idem.

La tema
Sarà dura trovare una tema che corresponde completamente alle nostre esegenze. Ma vale la pena cercare uno molto simile a quello che stiamo cercando di fare. Ma questo dipende molto del tipologia del sito. Per i blog, testata giornalistico, ecommercio, ci sono. Altrimenti una buona tema 'generico' che magari incorpora la tecnica di griglia (grid). Fusion, per esempio.

Non si modifica mai una tema! Bisogna (sempre e comunque) creare un sotto tema basato sull'originale - http://drupal.org/node/225125

I tipi di contenuto
Il problema principale è che è molto difficile cambiare un nodo di un tipo in un nodo di un altro. Molto. Ed essendo umani, sbagliamo di tanto in tanto. Esempio: per un sito di un azienda che aveva quattro divisioni, o fatto quattro tipi di contenuto. Errore o Orrore. Sarebbe stato molto meglio un tipo solo, con un campo CCK che definiva la divisione. Così un nodo postato in un divisione errato si cambiava in un click, non tramite un noioso taglia e copia. Va bene anche tassonomia. http://stackoverflow.com/questions/1902562/is-it-possible-to-change-the-...

Gli template
Sono buoni e cattivi. Buoni perchè è facile modificare l'HTML. Cattivi perchè spesso infrangano la regola DRY - don't repeat yourself. Lo uso solo quando l'aspetto visivo è molto (ma molto) diverso allo standard. Esempio: nodo con tanti campi CCK, views con nodi con tanti campi.

Le funzioni
Uso molto raramente funzioni di override di theme (theme_xxxx()). Ma uso spesso le funzioni di preprocessing per aggiungere variabili. Questo variabili vanno testato nel template (praticamente l'unico espressioni PHP - if/else/endif - che permetto nei template). Se si richiede più di una mancata di righe di codice, mi suona una campana di allarme, e trasferisco tutto in una funzione, che tengo in template.php.
Se ho creato più di un template (per esempio node-[tipo-di-contenuto].tpl.php) allora questo processo è automatico - altrimenti infrango io il principio DRY.

Più imparo, più dubito.

la strada per fare un tema da zero e lunga è piena di insidie... chi vuole spendere 2 o 3 anni della propia vita a realizzare un tema che poi diventa espandibile a piacimento faccia pure :D

penso che mi servira' un ultimo anno per realizzare il tema perfetto, perfetto nella grafica, nella struttura, e nella semplicità, e che sia leggerissimo nonostante la complessita'

naturalmente poi quando sara' online potrete rubare il codice sorgente :D

Sto digerendo il tutto anzi, per il momento sto ancora masticando...

Grazie John per le interessanti documentazioni che metti a disposizione di tutti noi...
Kipper

Il tema : sintetico, chiaro, digeribile da >> Caffeine.
I fronzoli occhei ma non che penalizzino con lentezze di scansione o scadente indicizzo del sito.
I content : sempre aggiornati settimanalmente / mensilmente al max.
Penso che sia importante rispettare la semantica (con temi, contenuti e impostazioni).

da sempre consigli utili john, grazie a un suo consiglio su come ottenere una cosa, mi si è aperta la mente e posso amplificare i tempi di un 30% e forse ottenere un sistema che mi permetterebbe di creare un sistema di personalizzazzione dei temi che solo pochi siti hanno.... ma non posso svelare niente, anche perchè quello che scrivo riesco a capirolo solo io :D

DREAMBOY wrote:
la strada per fare un tema da zero e lunga è piena di insidie... chi vuole spendere 2 o 3 anni della propia vita a realizzare un tema che poi diventa espandibile a piacimento faccia pure :D

Amen. Infatti qui sto cercando il minimo sforzo possibile, modificando una tema già creato...

DREAMBOY wrote:
penso che mi servira' un ultimo anno per realizzare il tema perfetto, perfetto nella grafica, nella struttura, e nella semplicità, e che sia leggerissimo nonostante la complessita'
naturalmente poi quando sara' online potrete rubare il codice sorgente :D

Il livello di conoscienza è altissimo, oltre a conoscere (X)HTML, CSS, e un pò di JavaScript, bisogna anche conoscere bene il lato front end di Drupal. Certo che ciulleremo la tua tema appena completato ;-)

kipper wrote:
Sto digerendo il tutto anzi, per il momento sto ancora masticando...

Buon appetito. A me rimane sempre qualcosa bloccato fra i denti...

Lorenzo wrote:
...I fronzoli occhei ma non che penalizzino con lentezze di scansione o scadente indicizzo del sito.

Sono anche difficile da implementare - per quello mi sorprende sempre che ci sono cosi tanti in giro...
Lorenzo wrote:
Penso che sia importante rispettare la semantica (con temi, contenuti e impostazioni).

Ou iez. Io mi limito alle problematica tecnica. Questo che dici tu però è tutto un altro problema - ed anche mistiere - che richiede gusto, fantasia, e la capacità di scrivere. Cose che di solo manca in un tecnico ;-)

DREAMBOY wrote:
...mi si è aperta la mente e posso amplificare i tempi di un 30% e forse ottenere un sistema che mi permetterebbe di creare un sistema di personalizzazzione dei temi che solo pochi siti hanno.... ma non posso svelare niente, anche perchè quello che scrivo riesco a capirolo solo io :D

Ah, la famosa tema 'CIA' - prima mi lo spieghi, poi devi ammazzarmi? ;-)

Più imparo, più dubito.