Ciao a tutti. Mi scuso per la mia recente latitanza dal forum. Questo è il motivo principale:
http://www.mitosettembremusica.it/
Di carne al fuoco ce n'è tanta, per cui segnalo solo qualche cosa a cui tengo di più, per il resto, chiedete pure.
- Sito bilingue con gestione del bilinguismo personalizzata, in quanto alcuni tipi di nodo hanno nodo originale/nodo tradotto, mentre altri hanno nello stesso nodo campi in italiano e campi in inglese; non ho usato i18n, ma solo Translations del core di Drupal
- Si è costruito un vero e proprio database con i brani e gli eventi della manifestazione; a loro volta, i brani sono definiti da altre caratteristiche (esecutori, autori, generi); il tutto, in un delirio di nodereference, con l'aggiunta finale di un modulo ancora sperimentale (flexifield), per gestire la nidificazione di nodi con associati campi di definizione (es. associare un esecutore al brano, ma all'esecutore deve essere associato anche uno strumento e gli esecutori possono essere da 1 a n)
- Si sta ultimando il laborioso processo di conversione del precedente archivio brani/eventi, che a suon di CSV e node_import è stato portato nella nuova articolatissima struttura del database
- Strumenti di ricerca multipli, con mix nell'utilizzo di views, di query ad hoc e dell'indice di ricerca di Drupal per ottenere i risultati (anche a causa dell'estrema frammentazione dei dati nel db)
- Ci sono state richieste "estreme" (;)) di personalizzazione delle procedure legate a registrazione e accesso utenti registrati. In alcuni casi, le procedure standard sono state modificate da moduli custom; in altri casi ho usato Rules per definire procedure aggiuntive
- Sulla base del modulo phpList, ho integrato completamente la gestione delle preferenze di iscrizione alla newsletter con il profilo utente: a PHPList vengono passati i dati sui generi musicali preferiti e la provincia di residenza, per effettuare eventuali invii mirati; iscrizione e cancellazione avvengono solo tramite Drupal, l'utente finale non vede mai PHPList, che viene usato dagli amministratori solo per spedire effettivamente le newsletter
- Flag è stato usato per la sezione di personalizzazione del programma da parte degli utenti, che possono scegliere eventi preferiti e, a parte, eventi per cui ricevere degli avvisi
- Content Profile gestisce i campi di registrazione, sia per gli utenti-pubblico, sia per l'area giornalisti. Di fronte alla necessità di differenziare fortemente sia i campi, sia le funzioni disponibili e con poco tempo a disposizione per fare esperimenti, ho optato per creare un sito parallelo con i contenuti dedicati ai giornalisti, in cui essi effettuano l'accesso. La cosa è stata tenuta il più possibile "trasparente" per evitare che si crei confusione
- Utilizzo di Date/Calendar per visualizzare i calendari, ma con una navigazione molto personalizzata, dato che si devono vedere solo i calendari di settembre di qualsiasi anno (e in più, ci sono eventi anche non in settembre...)
- La sezione multimedia si appoggia su risorse esterne: le fotogallery sono importate da Flickr; i video sono caricati su un server streaming; non sono state usate tecniche tipo MediaMover, ecc.
- Uso molto diffuso di Views come strumento di creazione rapida delle varie parti del backend: la maggior parte delle aree di amministrazione sono elenchi generati da Views con filtri esposti per facilitare la ricerca degli elementi da modificare: in questo campo, Views, secondo me ha espresso tutto il suo potenziale
La grafica non è mia, ma del mio committente: ArsMedia (Torino); il lavoro di theming (anche qui con un alto livello di personalizzazione) è stato condiviso con loro.
Un saluto particolare a vermario, che ha collaborato nelle fasi concitate immediatamente precedenti la pubblicazione del sito.
Complimenti per il lavoro, veramene fatto bene.
Vorrei farti qualche domanda in ordine sparso
Ok, mi fermo qui. ;)
Grazie e complimenti ancora.
Certified to Rock
Grazie mille, pinolo.
Se permetti un'altra domanda che avevo dimenticato: da una prima occhiata mi sembra che tu abbia usato zen; come mai hai usato delle tabelle nidificate per (ad esempio) la visualizzazione delle views relative agli eventi in programma (tipo qui: http://www.mitosettembremusica.it/it/programma/calendario/2009-09-16.html)? non sarebbe stato sufficiente una suddivisione 50% a-la-panels?
Zen non è abbastanza robusto in termini di compatibilità cross-browser?
Grazie ancora
Certified to Rock
L'HTML del template base è stato preparato dal committente. Quella parte in particolare l'ho poi sviluppata io come theming, ma dato che il tableless era già saltato a livello di layout, ho proseguito con le tabelle per evitare casini, seguendo modelli di pagine già preparate da loro. Qui mi sono concentrato principalmente sulle funzioni.
Zen tutto sommato dovrebbe funzionare bene, comunque, con template tableless.
Ci sono stati in certi casi delle incongruenze cross-browser, ma a livello di dettagli.
Capisco. Non deve essere stato facile...
Grazie ancora per le info!
Certified to Rock
Grande pinolo!
è stato un piacere collaborare , alla prossima! :-)
Mario Vercellotti (Vermario)
Freelance
http://www.verdevelop.com