Domanda

Ciao :) Ho postato questa stessa domanda su un sito Drupal-oriented, ma non ho ottenuto alcuna risposta a tutti. Brontolai a me stesso e voluto che il sito era più simile a StackOverflow, così ho pensato, perché non provare a chiedere qui:)

Sto giocando intorno con una vista che visualizza i nodi appartenenti ad un termine tassonomia. Il vocabolario ha anche un nodequeue tassonomia con subqueues per tutti i termini.

Finora la vista ha un argomento, ID termine tassonomia, ed è ordinato per data posta. Ma cosa succede se volevo per visualizzare tutti i nodi di un particolare termine, con tutti i nodi nodequeue in cima, e tutti i nodi non nodequeue (ma ancora in questo particolare termine tassonomia) qui di seguito, scelte per data?

Per chiarire, dire che questo è il mio vocabolario, che chiameremo 'roba vivente'

Plant
--Fruit
--Vegetable
Animal
--Fish
--Dinosaurs

I seguenti nodi si trovano sotto Dinosauri:

Tyrannosaurus Rex (added 2009-01-01)
Megalosaurus (added 2009-01-02)
Velociraptor (added 2009-01-03)
Brachiosaurus (added 2009-01-04)

Dal Tyrannosauruses e velociraptor sono dinosauri in più impressionanti, sono aggiunte anche la roba nodequeue vivente, dinosauri subqueue:

Il subqueue:

  1. Velociraptor
  2. Tyrannosaurus rex

Il parere definitivo li dovrebbe visualizzare in questo ordine:

Velociraptor (it's first in the NQ)
Tyrannosaurus Rex (2nd in NQ)
Brachiosaurus (of the remaining dinosaurs, this is the newest)
Megalosaurus (oldest non-queue dinosaur)

ho creato un rapporto con un nodequeue, ma non mi permetteva di scegliere un subqueue, ho potuto limitare solo alla 'roba vivente' nodequeue. Il mio primo argomento è vista ID termine, così ho pensato che se ho aggiunto "Nodequeue: riferimento subqueue". Come secondo argomento, mi piacerebbe avere il comportamento previsto, ma questo mostra solo i dinosauri elencati nel nodequeue

Qualsiasi aiuto o suggerimenti su questo problema sarebbe molto apprezzato. Grazie!

È stato utile?

Soluzione

Non ho davvero provato molto con subqueues nodequeues', quindi non sono del tutto certo di questo. Ma dalla mia esperienza con nodequeues, sembra che quando si usa una vista, si sono limitati alle cose di base che supportano e non si può davvero fare il tipo di personalizzazione che si sta cercando. Credo che la soluzione migliore, sarebbe quella di creare i propri punti di vista sorta gestore, dove è possibile ordinare in questo modo. Probabilmente sarà abbastanza difficile da fare una tale gestore, poiché è necessario capire entrambe le viste e nodequeues al fine di farlo funzionare. Si dovrebbe davvero dare qualche pensiero se sarebbe valsa la pena prima di avventurarsi su questa strada, a meno che non avete fatto questo genere di cose con viste prima.

Altri suggerimenti

Ulteriori hack:
Un work-around per il comportamento vostro cercando di realizzare potrebbe essere quello di rinunciare usando nodequeues a tutti. Non sono sicuro che l'intero impulso per utilizzando i nodequeues né l'importanza di date, ma di fronte a problemi simili prima, sono stato in grado di affrontare il problema utilizzando il seguente:

  1. Sticky
  2. date Modified

Se appiccicoso vostri dinosauri super-cool, e modificare le date pubblicati degli elementi in modo che corrispondano il tuo ordine, si potrebbe produrre quello che stai cercando in una singola vista. E 'sorta hokey, ed è basa sulla realtà non preoccuparsi pubblicazione di date (cosa che dipende sempre dalla situazione), né avere un motivo più pressante per l'utilizzo di un nodequeue. Detto questo, se non è necessario il nodequeue o le date, è una soluzione praticabile.

La soluzione 2-view da Jeremy dovrebbe essere praticabile, anche, e direi che è un altro modo comune per gestire lo scenario dato.

soluzione avvertimento Hacky!

Avere la vista primaria nella vostra pagina con gli articoli nodequeue.

Creare un altro punto di vista che viene esposto come un blocco per gli articoli non nodequeue. Mettere questo blocco nella regione contenuto principale e limitarla per mostrare solo su URL che sono gli stessi come la prima vista.

Potrebbe essere necessario fare un po 'giocherellare con le variabili url, ma penso che funzionerà.

Perché non concatenare i punti di vista dietro ogni nodequeue? (Ogni nodequeue genera una vista) È possibile aggiungere un colpo di testa (vedi 'Impostazioni di base' in vista pagina di modifica) per la seconda nodequeue che contiene il codice php che richiama views_embed_view ( 'prima nodequeue') (è sufficiente modificare il formato di ingresso del intestazione per 'php'). O meglio, creare una visualizzazione personalizzata che include ogni nodequeue invocando views_embed_view (). Questo potrebbe effettivamente mettere una nodequeue sopra l'altro, e se sono dello stesso tipo di formato / contenuto che non hanno nemmeno bisogno di pasticciare con i campi: è possibile utilizzare Style Row == Node. Per quanto riguarda le sue argomentazioni, possono essere passati al views_embed_view, come terzo parametro (i documenti non dicono che AFAICR, ma ho trovato un post nei forum ( http://drupal.org/node/99721 ) che hanno indicato args possono essere inviati come '$ current_view-> args' alla vista di essere incorporato).

HTH

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top