Wie kann ich Nodes des aktuellen und des Eltern-Begriffs anzeigen?
![](http://www.drupalcenter.de/files/noavatar_mini.gif)
am 23.09.2011 - 13:54 Uhr in
Hallo,
die Überschrift ist etwas schwer verständlich, hier nochmal genauer erklärt. Zuerst mal: ich benutze Drupal6 mit taxonomy_vtn und vielen weiteren Modulen, alles auf dem aktuellen Stand. Genaueres kann ich bei Bedarf erklären.
Ich habe ein Vokabular "Land", darin gibt es Einträge für jedes dt. Bundesland. Einige sind aber noch unterteilt worden indem Kind-Begriffe definiert wurden (mindestens zwei). Wenn ich den Elternbegriff aufrufe, bekomme ich auch alle Unterbegriffe und deren Nodes angezeigt. Das soll so bleiben. Allerdings möchte ich beim Aufruf eines Unterbegriffs auch die Einträge des Elternbegriffs sehen, aber ohne dass dieser wiederum alle anderen Unterbegriffe mitbringt. Ein Beispiel:
Begriffe
Baden-Württemberg
--Baden
--Württemberg
Berlin
Nodes:
Baden-Württemberg
-Node1
-Node2
-Node3
Baden
-Node4
Württemberg
-Node5
Berlin
-Node6
Wenn ich Baden-Württemberg aufrufe sollen die Nodes 1,2,3,4,5 angezeigt werden (funktioniert bereits)
Wenn ich Baden aufrufe sollen die Nodes 1,2,3,4 angezeigt werden
Wenn ich Württemberg aufrufe sollen die Nodes 1,2,3,5 angezeigt werden
Wenn ich Berlin aufrufe soll Node 6 angezeigt werden
usw.
Das Problem sitzt an zwei Stellen, die wahrscheinlich völlig unterschiedlich behandelt werden müssen:
* zum einen auf den Übersichtsseiten von taxonomy / taxonomy_vtn
* zum anderen in einem View wenn nach dem Begriff gefiltert wird (Filter ist bereits eingeschränkt auf dieses Vokabular)
Ich wäre schon glücklich, wenn eins von beiden funktionieren würde.
Kennt jemand eine Lösung für das Problem? Ich habe in Taxonomy_VTN schon alle möglichen Kombinationen durchprobiert aber ich bekomme nie die Einträge des Elternbegriffs angezeigt. Bei Views habe ich gar keine Idee wo ich was drehen könnte. Ich steh grad total auf dem Schlauch und weiss nicht, an welcher Ecke ich ansetzen muss damit es funktioniert. Bei den Modulen bin ich auch nicht fündig geworden, wobei mir aber auch nicht ganz klar ist, wonach ich suchen müsste.
Bin für jede Hilfe dankbar!
XL
- Anmelden oder Registrieren um Kommentare zu schreiben
Argumente
am 23.09.2011 - 15:10 Uhr
Hi
such mal nach Views und Argumenten es gibt dazu bestimmt sehr viele Tutorials. Du musst einem View einen Wert als Argument geben und diesen damit Filtern. Dann hast du schnell z.B. alle Nodes die einen gewissen Taxonomy Begriff haben, wenn du unter taxonomy/term/123 bist.
Spontan fürchte ich, dass
am 23.09.2011 - 17:14 Uhr
Spontan fürchte ich, dass sich das Argument mit der Filterung beisst. Die Möglichkeit, dass der Nutzer per Filter auf beliebige Begriffe zugreift, soll ja offen bleiben. Aber ich werd in der Richtung mal suchen.
Danke!
Argument und Filter wollen nicht zusammen
am 25.09.2011 - 16:31 Uhr
Wie ich befürchtet hatte: ein Argument kann zwar mit der Option Taxonomy ID mit Hierarchie den Elternbegriff "mitbringen", aber die Filterung funktioniert über die Filteroption des Views und ich finde keinen Weg, die gefilterten Begriffe als Argument zu übergeben.
Beispiel URL:
http://localhost/Test/VIEWNAME[/ARGUMENT]?Filteroption1[]=&Filteroption2[]=&Bundesland[]=[FILTER]
ARGUMENT ist hier das benötigte Argument um im Vokabular den Begriff und dessen Elternbegriff zu referenzieren. FILTER ist der per Filtermöglichkeit gewählte Begriff. Der View wird zuerst ohne Argument und ohne explizit gesetzten Filter aufgerufen. Derzeit gibt es drei Filteroptionen für den View und der View soll in allen Kombinationen funktionieren. Ich müsste also den View so umbauen, dass zumindest das Bundesland nicht als Filter sondern als Argument übergeben wird und dafür dann ein separates Auswahlfeld oder -block erstellen. Oder gibt es da eine andere Möglichkeit?
Use Case?
am 25.09.2011 - 19:05 Uhr
Ich kann nicht so recht deinem Use Case folgen.
Dann bau doch einen View, der Links auf die Terms setzt, damit man diese dann per einfachem klick als Filter benutzen kann. Und die Exposed Filter bewegen sich dann innerhalb dieser Auswahl.
Von daher denke ich, das das jetzt mehr ein Problem mit dem Use Case ist, als mit Views.
Das wäre sicher eine Option,
am 25.09.2011 - 19:24 Uhr
Das wäre sicher eine Option, die habe ich ja bereits angedacht. Bisher können aber auch mehrere Länder ausgewählt werden; das wäre dann nicht mehr machbar. Ich finde es aber schade, das Problem jetzt einfach auf "use case" zu schieben. Drupal ist sicher mächtig genug um das zu realisieren, ich finde nur nicht den richtigen Weg. Selbst mit einer langen Verkettung von Relationen habe ich nicht das gewünschte Ergebnis erzielt, aber manche kuriose Darstellung erzeugt.
"das Problem jetzt einfach auf "use case" zu schieben"
am 25.09.2011 - 19:31 Uhr
"das Problem jetzt einfach auf "use case" zu schieben" Ähm also ich verstehe deinen Use Case einfach nicht und es geht immer nur um den Use Case...
Von daher schiebe ich auch nichts einfach darauf. Und Drupal ist Modular. Wenn dann sprich hier bitte von Views. Das hat mit dem Core nichts mehr zutun. Views ist schon eine ziemliche Eierlegendewollmilchsau. Aber alles geht nicht. Wenn ich so deinen Use Case höre, dann solltest du vielleicht einfach Links basteln, die den Filter vorfüllen. Dann kannst du damit selektieren wie du lustig bist und immer noch die exposed Filter benutzen.
Ich versuch es nochmal genauer zu erklären
am 26.09.2011 - 11:45 Uhr
"das Problem jetzt einfach auf "use case" zu schieben" Ähm also ich verstehe deinen Use Case einfach nicht und es geht immer nur um den Use Case...
Der use case ist folgender:
Ich habe ein Vokabular mit den deutschen Bundesländern plus einige weitere Teil-Länder (z.B. Altbayern, Franken, Baden, Württemberg) die als Unterbegriff des jeweiligen Bundeslandes definiert sind. Dann gibt es Beitragstypen, die dieses Vokabular verwenden müssen. Es muss genau ein Begriff gewählt werden. Soweit ist alles in Ordnung. Dann habe ich einen View mit drei exponierten Filtern der aus den Beiträgen dieses Typs die gewünschten herausfiltert (oder alle anzeigt). Einer der Filter selektiert nach dem Vokabular Bundesland. Wenn dort ein Unterbegriff gewählt wird, sollen alle Beiträge, die diesen Unterbegriff oder den übergeordneten Elternbegriff tragen, angezeigt werden. Nicht jedoch die Beiträge, die einen anderen Unterbegriff des Elternbegriffs tragen, also einen "Geschwisterbegriff" haben. Wenn der Elternbegriff selbst gewählt wird, sollen alle Beiträge mit diesem Begriff oder einem der Unterbegriffe angezeigt werden.
Von daher schiebe ich auch nichts einfach darauf. Und Drupal ist Modular. Wenn dann sprich hier bitte von Views. Das hat mit dem Core nichts mehr zutun.
Ich habe doch von Views gesprochen. Explizit. Und davon, dass ich auch taxonomy_vtn nutze. Nirgends habe ich das "Problem" auf den Core geschoben. Mir geht es auch nicht darum, einen Schuldigen zu finden, sondern ich suche eine Lösung.
Views ist schon eine ziemliche Eierlegendewollmilchsau. Aber alles geht nicht. Wenn ich so deinen Use Case höre, dann solltest du vielleicht einfach Links basteln, die den Filter vorfüllen. Dann kannst du damit selektieren wie du lustig bist und immer noch die exposed Filter benutzen.
Links mit vorgefüllten Filtern habe ich bereits aus Bequemlichkeit angelegt. Aber da ich über die gesetzten Filter nicht die Elternbegriffe bekomme, nützt mir das in diesem Fall nichts. Wenn ich in diese Links jetzt ein Argument einbaue, dann mag das zwar mit den Elternbegriffen funktionieren, aber das Argument wird bei jeder neuen Filterung mitgeschleppt.
Ich hoffe, das war jetzt soweit verständlich.