Frage

Hallo :) Ich habe die gleiche Frage auf einer Drupal-orientierten Seite gepostet, aber überhaupt keine Antworten erhalten. Ich murmelte vor mich selbst und wünschte, die Seite wäre eher wie Stackoverflow, also dachte ich, warum nicht versuchen, sie hier zu fragen :)

Ich spiele mit einer Ansicht herum, die Knoten zu einer Taxonomie zeigt. Das Vokabular hat auch einen Taxonomie -Knotenqueue mit Subqueue für alle Begriffe.

Bisher hat die Ansicht ein Argument, eine Taxonomie -Laufzeit und wird nach Post -Datum sortiert. Aber was ist, wenn ich alle Knoten eines bestimmten Begriffs mit allen Knoten der Nodequeue oben und alle nicht-nodequeue-Knoten (aber immer noch unter diesem bestimmten Taxonomie-Term) nach unten sortiert?

Um zu verdeutlichen, sagen wir, dass dies mein Wortschatz ist, wir nennen es "lebende Sachen"

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

Die folgenden Knoten finden sich unter Dinosauriern:

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

Da Tyrannosaurus und Velociraptors besonders großartige Dinosaurier sind, werden sie auch zu den Nodequeue Living -Störs, Subqueue -Dinosauriern, hinzugefügt:

Die Unterqueue:

  1. Velociraptor
  2. Tyrannosaurus Rex

Die letzte Ansicht sollte sie in dieser Reihenfolge anzeigen:

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)

Ich habe eine Beziehung zu einem Nodequeueue erstellt, aber es würde mich nicht zu einer Subqueue aussuchen lassen, ich konnte nur auf das Nodequeue von "Living Stuff" einschränken. Mein erstes Ansichtsargument ist die Begriffs -ID. Ich dachte, wenn ich "Nodequeue: SubQueue Referenz" als zweites Argument hinzugefügt habe, würde ich das erwartete Verhalten erhalten, aber dies zeigt nur die im Nodequeue aufgeführten Dinosaurier.

Jede Hilfe oder Vorschläge zu diesem Problem wären sehr geschätzt. Vielen Dank!

War es hilfreich?

Lösung

Ich habe nicht wirklich viel mit Nodequeueues -Subqueueus versucht, daher bin ich mir dessen nicht ganz sicher. Aber aus meiner Erfahrung mit Nodequeueues scheint es, als würden Sie bei der Verwendung von Ansichten auf die grundlegenden Dinge beschränkt, die sie unterstützen, und können die Art der Anpassung, nach der Sie suchen, nicht wirklich durchführen. Ich denke, Ihre beste Wahl wäre, Ihre eigenen Ansichten zu sortieren, wo Sie sie so sortieren können. Es wird wahrscheinlich ziemlich schwierig sein, einen solchen Handler zu machen, da Sie sowohl Ansichten als auch Nodequeueue herausfinden müssen, damit es funktioniert. Sie sollten es wirklich überlegen, ob es sich lohnen würde, bevor Sie sich diesen Weg entfernen, es sei denn, Sie haben diese Art von Dingen mit Ansichten zuvor getan.

Andere Tipps

Weitere Hacks:
Ein Arbeitsverhalten für das Verhalten, das Sie versuchen, könnte darauf hinweisen, überhaupt mit Nodequeueues zu verzichten. Ich bin mir nicht sicher, ob der gesamte Impuls für die Verwendung der Nodequeueues oder die Bedeutung von Daten, aber an ähnliche Probleme zuvor konfrontiert war, konnte ich es mit Folgendem angehen:

  1. Klebrig
  2. Modifizierte Daten

Wenn Sie Ihre super coolen Dinosaurier kleben und die veröffentlichten Daten der Elemente so ändern, dass sie zu Ihrer Bestellung entsprechen, können Sie in einer einzigen Ansicht das produzieren, wonach Sie suchen. Es ist irgendwie hokey und es wird darauf hingewiesen, dass sich nicht wirklich um Veröffentlichungsdaten (etwas, das immer von der Situation abhängt), noch einen dringlicheren Grund für die Verwendung eines Nodequeueus abhängt. Wenn Sie nicht den Nodequeue oder die Daten benötigen, ist dies eine praktikable Lösung.

Die 2-View-Lösung von Jeremy sollte auch praktikabel sein, und ich würde sagen, dass dies eine weitere übliche Möglichkeit ist, das angegebene Szenario zu bewältigen.

Hacky Solution Warnung!

Nehmen Sie Ihre primäre Ansicht in Ihrer Seite mit den Nodequeue -Elementen auf.

Erstellen Sie eine andere Ansicht, die als Block für die Nicht -Nodequeue -Elemente ausgesetzt ist. Setzen Sie diesen Block in die Hauptinhaltsregion und beschränken Sie ihn nur auf URLs, die der ersten Ansicht entsprechen.

Möglicherweise müssen Sie mit den URL -Variablen ein bisschen fummeln, aber ich denke, es wird funktionieren.

Warum verkettet Sie nicht die Aussichten hinter jedem Knotenqueue? (Jeder Nodequeue generiert eine Ansicht) Sie können dem zweiten Knodequeue einen Header (siehe 'Basic -Einstellungen' auf der Anzeige bearbeiten) hinzufügen zu 'php'). Erstellen Sie eine benutzerdefinierte Ansicht, die jeden Nodequeue enthält, indem Sie die views_embed_view () aufrufen. Dies würde effektiv einen Nodequeue über einen anderen platzieren. Wenn sie den gleichen Format-/Inhaltstyp haben, müssen Sie nicht einmal mit Feldern herumspielen: Sie können einen Row -Style == -Knoten verwenden. In Bezug auf Ihre Argumente können sie als dritter Parameter an Views_embed_view übergeben werden (die Dokumente sagen nicht, dass AFAICR, aber ich habe einen Beitrag in den Foren gefunden ((http://drupal.org/node/99721) Das zeigte, dass Argums als "$ current_view-> args" an die Ansicht gesendet werden können, die eingebettet ist).

HTH

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top