Problem mit views_embed_view und Term-ID
am 12.01.2010 - 15:03 Uhr in
Ich komme einfach nicht weiter und hoffe mal wieder auf den entscheidenden Hinweis hier im Forum.
Ich möchte für eine Musikverlag-Seite mit Hilfe von Taxonomy alle Nodes, die zum jeweiligen Künstler gehören, untereinander gelistet haben. Ich habe ein View mit Argument Term-ID angelegt und gebe diese aus in taxonomy_term_page.tpl.php.
Und jetzt kommt das Problem: Ich dachte, ich kann den View mit folgendem Code ausgeben
$viewName = 'Artists';
$viewHtml = views_embed_view($viewName, 'page_1', $tid);
echo $viewHtml;
aber da kommt nur eine leere Seite.
Ich vermute, die Variable $tid ist falsch oder kann so nicht angefordert werden.
Wenn ich das Argument durch einen konkreten Wert ersetze, also einen Term, den es gibt, funzt die View-Ausgabe.
Kann mir jemand sagen, wie ich an die Term-ID rankomme, bzw. wie ich den Code oben umbaue? Meine php-Kenntnisse sind noch eher mager...
Danke
- Anmelden oder Registrieren um Kommentare zu schreiben
debug
am 12.01.2010 - 15:21 Uhr
Hast Du mal geschaut, was in
$tid
drinsteht?Bzw. was alles für Variablen im Template verfügbar sind?
Stefan
--
Sei nett zu Deinem Themer!
Tipp: Beachte die Verhaltensregeln des DrupalCenter.
Wenn ich die Variablen in
am 12.01.2010 - 16:12 Uhr
Wenn ich die Variablen in taxonomy_term_page.tpl.php abfrage erhalte ich
...
[tids] => Array
(
[0] => 4
)
...
bzw. die entsprechende ID.
Das Argument ist also definiert. Wie kriege ich's denn jetzt in meine View-Abfrage rein?
Variable
am 12.01.2010 - 16:15 Uhr
Dort steht
tids
, in Deinem anfänglichen Codeschnipsel fehlt jedoch das "s".Stefan
--
Sei nett zu Deinem Themer!
Tipp: Beachte die Verhaltensregeln des DrupalCenter.
Ja, das hatt ich auch schon
am 12.01.2010 - 16:18 Uhr
Ja, das hatt ich auch schon bemerkt und geändert. Leider ohne Erfolg...
Kann es sein, dass - wie
am 12.01.2010 - 16:30 Uhr
Kann es sein, dass - wie gesagt, meine php-Kenntnisse sind gering - das Argument falsch ist?
Wenn ich ganz am Schluß, also hinter dem echo-Ausdruck nochmal den Wert von $tids mit
echo $tids;
ausgebe, erhalte ich "Array", also keinen einzelnen Wert.
Muß ich nicht stattdessen den aktuellen Wert von $tids erst in eine Variable schreiben um dann diese als Argument zu benutzen? Und wenn ja, wie mach ich das?
Gelöst?
am 12.01.2010 - 17:24 Uhr
Ich denke, ich hab den Fehler gefunden. Es hatte mit der Page-URL zu tun.
Ich hatte in Views als Pfad eingegeben artists/%, gleichzeitig gab es aber auch URL-Aliase, die dem wohl in die Quere kamen.
Ich habe jetzt die taxonomy_term_page.tpl.php wieder raus genommen, den Pfad für die Page in Views geändert zu taxonomy/term/% und die URL-Aliase gelassen wie sie sind. Ergebniss: ich bekomme genau die Views angezeigt, die ich will.
Vielleicht kann mir ja jemand verraten, ob das der richtige Weg ist, oder ob ich nen Denkfehler mache.
Ansonsten erstmal Danke ans Forum hier...