Sto cercando di avvolgere di nuovo i miei filtri contestuali! L'ho usato un po 'di tempo fa, ma sono rimasto di nuovo perplesso. Ecco cosa sto cercando di fare:
- Genera una pagina del nodo del contenuto clonato con termini di tassonomia inseriti in questa pagina clonata.
es .: EXAMPLE.com/white-shoes/blue
Quando un utente raggiunge la pagina / white-shoes mostrerà la pagina del nodo originale orientata verso il colore bianco. Ora se l'utente atterra su / white-shoes / blue mostrerà la stessa pagina del nodo, ma questa volta tutto il contenuto del corpo verrà riscritto sostituendo il colore bianco con il colore blu.
In Views dovrei creare una visualizzazione di pagina con il percorso di:% /%
Ora vorrei creare un filtro contestuale per recuperare il nid. Aggiungo Content: nid come filtro contestuale. Scelgo PROVIDE A DEFAULT VALUE e inserisco questo codice PHP:
$ x = drupal_lookup_path ('source', arg (0));
$ y = esplodi ('/', $ x);
ritorna $ y 1 ;
Quel codice PHP fondamentalmente converte la parte / white-shoes dell'URL in un NID. Ma non funziona. Ho testato il codice tramite drush ev tramite il terminale e ho effettivamente ottenuto un risultato restituito, quindi so che funziona.
Faccio lo stesso per il nome del termine tassonomia e aggiungo anche un filtro contestuale. Questa volta scelgo PROVARE UN VALORE PREDEFINITO e selezionare RAW VALUE DA URL e selezionare il secondo argomento.
Come puoi vedere quando inserisco un PREVIEW VALUE per il filtro contestuale: AAA / BBB / CCC. Il mio valore predefinito viene ignorato. Dovrebbe afferrare il secondo argomento, ma sta ottenendo solo il 1 °. Guarda l'istruzione SQL DOVE e vedrai che sta ricevendo AAA quando dovrebbe essere BBB.
Quindi la domanda è: cosa sto facendo di sbagliato o esiste una soluzione migliore a ciò che voglio realizzare?