Ragazzi ho creato 2 tipi di contenuto
1: Contiene solo testo con campo nodereference
2: Contiene solo immagini con campo imagefield
Ho associato il contenuto 1 al contenuto 2 tramite nodereference,e funziona alla perfezione...
Ora pero' devo creare una view che nel contenuto 1,visualizzi i campi del contenuto 2 associato..
Ho creato la view di tipo blocco,ho assegnato i vari filtri "pubblicato-tipo di nodo-campi" e in relazioni ho impostato il campo di nodereference..
Ora qui viene il bello: La view visualizza i valori di tutti i nodi di tipo2,io invece voglio solo quelli associati al nodo.. Se associo anche un'argument sull'url nodo,non mi visualizza nulla.. dove sbaglio ?
Per quanto ne so, non si possono vedere i campi di un nodereference, ma solo il title (per questo si usa automatic nodetitle...). Tutto questo per Drupal 5.x (non so se con views relationship in 6.x qualcosa è cambiato).
Uhm..ma perchè non si puo' ? cioè mi spiego meglio..
(Correggetemi se sbaglio :) )
Il nodereference credo non sia altro che una referenza ad un'altro Node Id..nello stesso modo in cui view recupera il NID dall'url non puo' riuscire a recuperare il NID dal node reference, che non è altro che il link al NID del nodo ?
In alternativa come potrei fare per visualizzare quanto richiesto ?.. sto provando moduli a bizzeffe ma finche non capisco il concetto dei vari moduli faccio solo una gran confusione mentale..
EDIT: http://drupal.org/project/views_attach
Se ho capito bene dovrebbe fare cio' che intendo io.. mo provo e vi dico..
Se ho capito bene, il rapporto tra i nodi è 1 a 1. Ma per fare la cosa che vuoi tu, non ti converrebbe modificare il template dei due tipi di contenuto e caricare il nodo collegato con node_load e mostrare poi i campi che vuoi?
Ehm... node_load ?.. chi è questo sconosciuto ? :) .. hahaa apparte agli scherzi,nn so proprio cosa intendi con node_load pertanto nn so quali "limiti/difficoltà" possa comportare :)
L'importante è che in un modo o in un'altro riesca a visualizzare nel nodo 1 solo certi campi delle eventuali referenze...in piu pensando ad un'evolversi,vorrei tenere il piu possibile compatibilità tra cck e views per creare pagine views con navigazione,che mi mostrino una sorta di teaser del content type 1,piu i campi associati del content type 2.
Cmq,se riesci a farmi un'esempio al volo di node_load, magari entro nell'ottica giusta...
Per esempio, node-nodo1.tpl.php potrebbe contenere qualcosa di simile (vatti a guardare bene come sono fatti gli oggetti per CCK+Nodereference - meglio se usi content template):
...
// ottengo il valore del campo nodereference - controllare come è costruito l'oggetto
$nid_da_caricare = $node->field_riferimento['value'];
// carico il nodo collegato
$nodo2 = node_load($nid_da_caricare);
// leggo i valori dall'oggetto con il nodo collegato
$titolo2 = $nodo2->title;
$corpo2 = $nodo2->body['value'];
...
Grazie per l'esempio pinolo,ma sto totalmente a digiuno di php di conseguenza mettermi a costruire una funzione è un traguardo che va oltre le mie conoscenze attuali..
Cmq dopo 72 ore di scoraggiamenti vari e milioni di post letti.. ho trovato questo: http://drupal.org/node/221919
Funziona a metà,nel senso che bisogna filtrare sulla url id e nn sull'arg..in piu la view nn viene caricata,tocca usare insert view drettamente nel body.
In sintesi: mi costa parecchio dirlo...ma...drupal comincia a darmi i nervi..cosi fantastico ma cosi caotico da farsi venire una crisi di nervi...
Ti stai incasinando la vita.
Non ti è indispensabile una view per recuperare un nodo.
E non devi "scrivere una funzione" per caricare un nodo. Devi solo richiamare funzioni e oggetti esistenti con un numero di righe di codice molto vicino a quello che ho scritto sopra.
Il fatto che tu sia a digiuno di PHP non è una buona ragione per continuare il digiuno ;)