vorrei stampare un immagine diversa a seconda del nodo.
nel mio blocco vorrei fare una cosa simile a
<img src="/images /img-laterale-"<?php echo "$node->nid" ?>".jpg" />
quindi inserendo nell'url dell'immagine il numero di nodo corrente.
E' fattibile? c'è una variabile globale che mi sfugge?
Ho trovato questo codice, che inserito nel blocco, mi sputa fuori tutte le variabili globali
<?php
print var_dump($GLOBALS);
?>
Quello che mi interessa sembra contenuto in
["node/1"]=> array(2) { ["callback"]=> string(14) "node_page_view" ["callback arguments"]=> array(1) { [0]=> object(stdClass)#2 (26) { ["nid"]=> string(1) "1"......
una cosa così però non so mica come estrarla
Sì, direi che è fattibile..... ma scusa, non ti funziona?
hai provato ad aggiungere:
global $node;
prima della tua istruzione?
Così, al volo, non direi ci sono problemi.
Ciao
Gianni
prova così:
Ho scritto così
<?php
global $node;
print $node->nid;
?>
Ma non stampa niente in nessuna pagina
Allora prendi l'argomento 1 e lo 0 (arg(1) e arg(0)).
Se arg(1) è numerico (verifica) e arg(0)='node', carica l'oggetto nodo con l'istruzione
$oggettonodo = node_load(arg(1));
.........a questo punto hai il nid in $oggettonodo->nid
Ciao
Gianni
Funziona!!
Grazie!!
<?php
if ((is_numeric(arg(1)))&&(arg(0)=='node')){ $oggettonodo = node_load(arg(1));
print "$oggettonodo->nid";
}
?>
<img src="/files/immagini/tipo-<?php print $node->type ?>-nodo.png" alt="..." />
Prova a vedere se è quello che ti serviva...
Ciao
Marco
--
My blog
Working at @agavee
Il suo problema è che non vede l'oggetto node nel blocco :-)
Ciao
Gianni
Non solo, ma volendo il blocco può conoscere anche il tipo di contenuto del nodo in cui si trova, vedi la discussione: codice php per visualizzare i blocchi | Drupal Italia .
Possibilità che offre interessanti soluzioni.