[gelöst] Blockview und kombinierte Term-ID
am 10.02.2011 - 10:02 Uhr in
Hallo Community,
folgende Grundstruktur:
- ein Navigationsmenue, welches auf Taxonomy/Terms aufgebaut ist.
- teilweise mehrfach auftretende Menuepunkte, welche mittels ..taxonomy/term/20+30 aufgerufen werden
- eine Blockview, welcher die Term-ID als Argument erhaelt und entsprechenden, kontextbezogenen Blockinhalt ausgibt
Mein Problem: in der View-Konfiguration funktioniert alles, einfache ID-Uebergabe und kombinierte (20+30) und entsprechende Contentausgabe.
In der Liveansicht funktioniert jedoch nur noch die einfach ID. Bei Kombinierte Term-IDs wird kein Content ausgegeben.
Die uebergebenen IDs werden nach dem Muster 20%2B30 (20+30) aufgerufen. Als Gegentest (in der Ansichten-Vorschau) funktioniert jedoch die Ubergabe von 24%2B75.
Zur Info: das WebPaket unterstuetzt kein ModRewrite. Kann das damit was zu tun haben?
Habt ihr eine Idee wie ich das Problem loesen kann???
Gruss,
chan.
- Anmelden oder Registrieren um Kommentare zu schreiben
Aber wie willst Du denn den
am 10.02.2011 - 11:41 Uhr
Aber wie willst Du denn den View aufrufen? Blöcke können keine Argumente erhalten, die Views auswerten kann. Ein Block hat auch keinen Pfad, den man im Menü ansprechen kann. Das geht nur mit einem Seiten-Display in Views. Dann funktionieren auch die Argumente.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Dann habe ich mich wohl
am 10.02.2011 - 11:54 Uhr
Dann habe ich mich wohl falsch ausgedrueckt:
Mein View wertet Argumente aus -> Term-ID der URL -> und stellt dann kontextbezogen den Inhalt dar.
Aus dem View habe ich eine Blockansicht erstellt und den Block einer Seitenspalte zugeordnet.
Rufe ich eine Seite auf, z.B. example.com?q=taxonomy/term/20, sehe ich in meinem Seitenleiste-Block(-ansicht) den kontextbezogenen Inhalt (diese Inhalte sind natuerlich vorher ueber das Vokabular entsprechend kategorisiert worden)
Soweit, sogut - und so funktioniert auch alles!
Ich habe aber Seiten nach dem Muster example.com?q=taxonomy/term/20+30 welche in der Adressleiste als example.com?q=taxonomy/term/20%2B30 kodiert erscheinen.
In diesem Fall werden meine kontextbezogenen Inhalte nicht mehr angezeigt! Obwohl die Vorschau in der Viewkonfiguration auch mit den kombinierten IDs (Argumenten) klappt.
Ist das Problem jetzt verstaendlicher?
Gruss,
chan.
chan
Ok, dann mußt Du die
am 10.02.2011 - 12:22 Uhr
Ok, dann mußt Du die Argumente doch über PHP abholen. Also Standardargument bereitstellen über PHP-Code. Versuch dort mal den folgenden Code. Habe ich nicht getestet, sollte aber funktionieren.
if(arg(0) == 'taxonomy' && arg(1) == 'term' && arg(2) != '') return arg(2);
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Prima! Hat geklappt. Der
am 10.02.2011 - 20:29 Uhr
Prima! Hat geklappt.
Der Loesung entnehme ich, dass Drupal per default die ID der URL auf numerischen Wert prueft. Ohne diese Pruefung laeuft alles! Ist das nicht etwas inkonsequent, da kombinierte IDs schliesslich systemimmanent sind?!
Vielen Dank nochmal!
chan
Nein, Drupal prüft das nicht
am 10.02.2011 - 23:06 Uhr
Nein, Drupal prüft das nicht selbstständig, aber da Du auch kombinierte Werte in der Form 20 + 40 übergeben willst, oder 20, 30, 40 kann das nicht auf numerisch überprüft werden. Wenn ich weiß, daß da nur eine einzelne Zahl kommen soll, prüfe ich den Parameter mittels der Funltion is_numeric().
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *