Mit VIEWS und TAXONOMY Inhaltstypen miteinander verlinken
am 18.03.2012 - 03:48 Uhr in
Vorab: ich kann mir nicht vorstellen, daß ich der erste bin, der dieses Problem hat aber ich habe trotz umfangreichen rumgegoogelns keine Lösung gefunden.
Vorhanden sind: (unter Drupal 7, Views 3)
2 Inhaltstypen ("Projekt" und "Nachricht") mit jeweils einem Taxonomie-Referenz-Feld
1 Taxonomie-Vokabular
Das Ziel:
Während eine Node vom Typ "Projekt" dargestellt wird, sollen in einem Block die Nodes vom Typ "Nachricht" aufgelistet werden, die mit dem gleichen Taxonomie-Begriff versehen sind, wie die derzeit angezeigte "Projekt"-Node.
Das Modul "Node-Reference" soll nicht verwendet werden.
Mein Problem:
Ich bekomme es nicht hin, die Kontext-Filter (Argumente) und ggf. Beziehungen so zu wählen/konfigurieren, daß das Gewünschte herauskommt.
Es beginnt damit, daß ich nicht verstehe, ob ich im Kontext-Filter nach der Node-ID oder dem Taxonomie-Inhaltsfeld filtern soll. Beides erscheint mir sinnvoll. Die logische Kette wäre bei der Node-ID: Projekt-Node-ID -> Projekt-Taxonomie = Nachricht-Taxonomie -> Liste der Nachricht-Node-ID. Wenn ich nun direkt nach dem Taxonomie-Inhalts-Feldes filtern würde, so sollte die Kette so aussehen: Projekt-Taxonomie = Nachricht-Taxonomie -> Liste der Nachricht-Node-ID.
Offenbar habe ich die Funktion des Ganzen noch nicht vollständig begriffen. Ich erhielt bei allen Try&Error-Versuchen eine leere Liste.
Ich bin daher für jeden Hinweis dankbar, der mir die korrekte Setzung der Kontekt- und Beziehungseinstellungen verrät.
Beste Grüße
- Anmelden oder Registrieren um Kommentare zu schreiben
Ein nicht ganz unwesentliches
am 18.03.2012 - 09:58 Uhr
Ein nicht ganz unwesentliches Problem dabei ist: ein Block kann keine Argumente aus der URL übernehmen. Das gilt auch für Views-Blöcke. Also mußt Du da über einen Trick arbeiten. Es gibt bei View Argumenten die Frage: Was tun, wenn kein Argument zur Verfügung steht => Standard Argument zur Verfügung stellen. Vermutlich hilft dann auch nur PHP-Code um die NodeID aus der URL mittels der Drupal arg-Funktion zu holen, den Node mit node_load zu laden, über die Taxonomie-ID, zu die findest Du im Node, den Begriff zu holen, mit der Funktion taxonomy_get_term der Begriff zu holen und an den View als Argument zu übergeben. Dazu mußt Du Dich aber intensiv mit den Strukturen von Node und Taxonomy-Item befassen, damit der Code funktioniert.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Ohps!
am 20.03.2012 - 02:48 Uhr
@werner: Ganz lieben Dank für die Hinweise. - Stimmt! Daß ein Block keine URL übernehmen kann, habe ich beiläufig bereits gelesen. Wohl aber auch unbewußt überlesen. Der Grund? Du hast das Schlüsselwort selbst geschrieben: "intensiv". Meine stille Hoffnung war offenbar, daß die Lösung zwar wunderbar einfach sei, sich mir aber noch nicht erschlossen hat. - Schei***dreck ;-)
Nun denn. Ich werde mal in mich - das Problem - und bei naßkaltem Wetter vielleicht auch anhand der Schlüsselbegriffe, die Du genannt hast, in die technischen Probleme gehen. Dir aber: herzlichen Dank für die geopferte Zeit!
Liebe Grüße
wenn ich dich richtig
am 21.04.2012 - 12:42 Uhr
wenn ich dich richtig verstehe müßte dir dies hier
http://drupaleasy.com/blogs/ryanprice/2008/06/using-views-2-drupal-6-cre...
helfen. beste grüße
tridru