[NEWBIE] "Finalmente" ho dei problemi concreti da sottoporre... (e piccolo incoraggiamento a chi si avvicina a DRUPAL)

3 contenuti / 0 new
Ultimo contenuto
[NEWBIE] "Finalmente" ho dei problemi concreti da sottoporre... (e piccolo incoraggiamento a chi si avvicina a DRUPAL)

Allora ragazzi,
sto leggendo "Pro Drupal Development" della APress, un libro veramente ben fatto, purtroppo in inglese, che finalmente mi sta facendo capire qualcosa in più di questo fantastico CMS.

La prima cosa che mi è più chiara è che sebbene Drupal sia molto "customizzabile" attraverso la propria area di amministrazione quel che si può fare sposcandosi le mani col codice realmente non ha limiti! Il bello è che perlopiù si tratta di "overridare" funzioni consolidate e già esistenti che utilizzando convenzioni nominali consolidate diventa molto semplice (almeno finora).

Altra cosa stupenda è il theme engine (che ho scoperto essere stato studiato e sviluppato proprio dalla comunità di drupal)... è una potenza e segue alla perfezione la logica di overriding del sistema cui viene applicato.

Con queste poche nozioni basilari son riuscito a "tematizzare" (sarà corretto il termine) una interfaccia creata con photoshop e, mi si passi, il risultato mi entusiasma... L'interfaccia HTML/CSS la potete vedere su http://www.opiweb.it/demo, mentre il drupal "tematizzato" è raggiungibile su http://www.opiweb.it/opipal.

Come potete vedere già la home è incompleta perchè a questo punto entra in ballo questo post!

Mi spiego: la sezione "about me" non è altro che il testo della pagina creata con drupal, la sezione "photography" dovrebbe mostrare una immagine random pescata tra diverse gallery mentre "latest work" dovrebbe visualizzare l'immagine associata all'ultimo lavoro eseguito. Per photogallery credo esista, a disposizione col modulo image o qlcs del genere, un blocco quindi nn mi preoccupo più di tanto...

Per i lavori invece la cosa diventa un po' più complessa... Da quanto ho capito dovrei creare un blocco atto a visualizzare quell'immagine giusto? La domanda è, il blocco mi conviene crearlo via amministrazione (quindi con tutto il codice php in qualche modo residente in db e il dover creare poi un content type "works" con in CCK), oppure mi conviene forse definire un nodo (strada che, essendo un nodo in pratica un modulo, mi consentirebbe di definire poi all'interno del nodo stesso anche il blocco)?
In entrambi i casi, l'immagine del "work" dovrebbe appartenere al content type (si può fare) o una Image Attach (modulo)? In qust'ultimo caso però rischio di ritrovarmi le immagini dei "works" tra quelle pescate dal modulo "random image" (che invece dovrebbe visualizzarmi solo quelle che io carico nelle gallery di photography)...

Spero di essere stato chiaro (e non troppo prolisso) ... e ringrazio chi voglia spendere 5 minuti su questo thread che, come da oggetto, penso possa essere molto utile ed incoraggiante per quanti vogliano approcciare il sistema.

P.S. la textarea WYSIWYG in cui sto scrivendo adesso, è un modulo? ;p

Ciao e grazie

angryopium wrote:

Per i lavori invece la cosa diventa un po' più complessa... Da quanto ho capito dovrei creare un blocco atto a visualizzare quell'immagine giusto? La domanda è, il blocco mi conviene crearlo via amministrazione (quindi con tutto il codice php in qualche modo residente in db e il dover creare poi un content type "works" con in CCK), oppure mi conviene forse definire un nodo (strada che, essendo un nodo in pratica un modulo, mi consentirebbe di definire poi all'interno del nodo stesso anche il blocco)?

Semplicemente crei il blocco e ci metti il codice php per il recupero dei dati che ti servono. Poi li temizzi con le funzioni apposite..... io farei così.

P.S.
Nodo != Modulo
Definisci nuovi nodi solo se ne hai veramente bisogno (chessò, aggiungere nuove proprietà al nodo pagina)

Spero di aver interpretato bene la tua domanda

Ciao
Gianni

Innanzitutto voglio chiedre scusa se i miei post odierni sono tutti un po' correlati tra loro e possono sembrare ripetitivi. Riguardo la discussione con giannigiusti io ho fatto così:
1. ho installatto il CCK e l'imagefield
2. creato nuovo tipo contenuto works con titolo, descrizione ed immagine (probabilmente aggiungerò anche un link)
3. creato blocco da amministrazione, nel corpo c'ho messo:

<?
$result = db_query("SELECT * FROM {node} WHERE type='works' ORDER BY nid DESC LIMIT 1");
$nodo = db_fetch_array($result);
$result = db_query("SELECT * FROM {content_type_works} WHERE nid=%d",$nodo['nid']);
$work = db_fetch_array($result);
$result = db_query("SELECT * FROM {files} WHERE fid=%d",$work['field_homepic_fid']);
$file= db_fetch_array($result);
?>
<?return $file['filepath'];?>
(lo so che una join magari era più performante...)
4. creato block-block-1.tpl.php contenente:
<div class="block block-<?php print $block->module; ?>" id="block-<?php print $block->module; ?>-<?php print $block->delta; ?>">
    <h2 class="title"><?php print $block->subject; ?></h2>xxx
<div class="homephoto">
<img src="<?=$block->content?>"/>
</div>
</div>

e l'effetto sortito è quello desiderato... solo che però nn lo vedo "stilisticamente pulito"... Qualcuno ha idee alternative e sicuramente migliori (nel senso di riutilizzo di funzioni drupal/modulo)???

Grazie