Block je nach Taxonomie anzeigen

am 17.12.2012 - 10:10 Uhr in
Guten Morgen an alle,
ich habe ein Problem, bei dem ich nicht weiterkomme. Ich verwende Drupal 6.26 und Views 6.x-2.16.
Ich habe eine Taxonomie-Struktur folgendermaßen aufgebaut:
Marke 1
Serie1
Serie2
Marke2
Serie1
Serie2
Unterserie1
Unterserie2
Marke3
Serie1
...
Kategorie1
Unterkategorie1
Unterkategorie2
Kategorie2
...
Ist auch hier zu sehen: www.bestofcosmetics.de
Im Haptmenü findet ihr Marken und Kategorien.
Nun zu meiner Frage. Ich habe zu jeder Marke, Serie, Kategorie und Unterkategorie einen separaten Text, den ich gern als Block anzeigen lassen möchte, je nachdem bei welcher Marke, Serie, Kategorie oder Unterkategorie ich mich befinde. Ich habe einen neuen Inhaltstypen mit einem Textfeld erstellt, bei dem ich Marke/(Serie) oder Kategorie(Unterkategorie) auswählen kann.
Vielleicht könnte mir einer helfen, wie es vielleicht auch anders/besser angestellt werden könnte.
Ich danke euch,
Marin
- Anmelden oder Registrieren um Kommentare zu schreiben
Anzeige über URL-Alias
am 17.12.2012 - 12:06 Uhr
Grundsätzlich habe ich mir angewöhnt, meine Blöcke über die URL-Aliase zu steuern. Die Aliase werden bei mir über pathauto erzeugt. Ich habe mir jetzt nicht deine Aliase näher angeschaut, aber in deinem Beispiel würde ich die Blöcke schematisch so steuern:
Sichtbarkeitseinstellungen "Nur auf den aufgeführten Seiten anzeigen"
Kategorie 1
Kategorie 1/*
Eventuell dann auch noch
Untertkategorie 1
Unterrkategorie 1/*
etc.
Da die Site ja schon öffentlich ist, ist es schwierig, das Konzept der URL-Aliase umzustellen. Da hilft dann evtl. noch path-redirect für einzeln Umleitungen, wenn es nicht zu viel Handarbeit wird.
Alternativ klappt das auch mit dem Context-Modul. Das gibt dir die Möglichkeit, komplett die Anzeige von Blöcken und Inhalten zu steuern. Wirkt auf mich recht komplex und ist für mich persönlich zu weit weg von der Art und Weise, wie Drupal die Dinge löst. Kann aber im Einzelfall durchaus eine sinnvolle Lösung sein, das ist jetzt aber nur meine ganz persönliche Meinung. Es führen ja immer mehrere Wege zum Ziel. Man muss nicht jeden gehen, es ist aber gut zu wissen, dass es auch Alternativen gibt :-)
EDIT: Man sollte schon nochmal lesen, wenn man nach Lesen des Beitrags zwei Stunden später antwortet, sorry. Ich glaube, die Darstellung der Böcke an sich war klar, da habe ich wohl die falsche Antwort gegeben. Ich hatte mir deine Frage vor 2 Stunden durchgelesen, bin jetzt nochmal auf dem Tab gelandet und habe mal einfach etwas (unnötigen) Text erzeugt :-(
Zu deiner Frage: Du kannst mit einem Inhaltstypen arbeiten, wie Du das getan hast. Dann hast Du die Beiträge auch sauber in der Inhaltsübersicht und weißt, wo Du die findest. Alternativ kannst Du aber auch einen neuen Block definieren, diesen dann direkt mit dem Text füllen, den Du möchtest und den Block dann anzeigen. Ist in dem Fall wahrscheinlich einfacher. Doch dann musst Du Textkorrekturen über die Bockanzeige direkt machen, ein anderer Arbeitsschritt, aber kein großer Aufwand. Ansonsten fällt mir auch nichts besseres ein.
Ich würde dafür Relevant
am 17.12.2012 - 12:03 Uhr
Ich würde dafür Relevant Content http://drupal.org/project/relevant_content benützen, das müsste Deiner Anforderung gerecht werden...
Danke
am 17.12.2012 - 12:47 Uhr
Ich danke euch beiden für die schnelle Antwort. Ich werd mich mal dran versuchen und dann berichten!
LG,
Marin
Naja, so richtig auf den
am 17.12.2012 - 21:43 Uhr
Naja, so richtig auf den Nenner kam ich bisher noch nicht. Bevor ich weiterprobiere, möchte ich aber nochmal eine Frage loswerden. Ist es nicht einfach mit Views möglich, Texte je nach Taxonomie in einem Block anzeigen zu lassen? Wie gesagt, in meinem neuen Inhaltstypen kann ich das Vokabular auswählen und einen Text einfügen. Wie funktioniert das jetzt über Argumente, Filter... in Views?
Danke danke...
Im Prinzip ja, aber Blöcke
am 17.12.2012 - 21:55 Uhr
Im Prinzip ja, aber Blöcke können keine Argumente bekommen. Du müßtest den View im Block über PHP anzeigen lassen z.B. mit der Funktion views_embed_view. Dann kannst Du Argumente mitgeben. Es bleibt aber immer noch die Frage, woher Du die Argumente bekommen willst und wann der Block angezeigt werden soll. Das muß Du grundsätzlich lösen etwa über das Modul Context. Was der View dann anzeigen soll ist der zweite Schritt.
Beste Grüße
Werner
Wieso View?
am 18.12.2012 - 11:14 Uhr
Ich kann mich @wla da nur anschließen. Ein weiteres Argument. VIEW wird genutzt, um dynamisch erzeugte Inhalte zu generieren, da es eine Sicht (View) auf die Datenbank gibt. Deine Blöcke sind inhaltlich jedoch statisch, wenn ich das richtig verstanden habe. Es geht also nicht um die Erzeugung eines Blockinhalts,(da brauchst Du definitiv VIEW) sondern nur um Sichtbarkeit der Blöcke.
Die Problemstellung "einen definierten Block nur auf bestimmten Seiten anzeigen" kannst Du über die Konfiguration des Blocks bzw. der Blockanzeige sicher lösen. VIEW ist da der falsche Ansatz. Die Lösungsansätze über die Steuerung der URL-Aliase und weitergehend über Context sind sicher machbar - meiner Meinung nach.