[gelöst] related page block nur 1 Term wird angezeigt aber alle nodes
am 25.11.2010 - 22:12 Uhr in
Hallo ich komme nicht weiter...
ich erstelle mit views2 eine "related page block" der mir die Seiten anzeigt, die die gleichen Terms haben wie der angezeigte node.
Siehe Vorlage aus:
http://drupaleasy.com/blogs/ryanprice/2008/06/using-views-2-drupal-6-cre...
Das funktioniert auch so weit.
Versuche ich im Block bei den Feldern jedoch nicht nur den Titel auszugeben, sondern auch den Term (ich möchte gern danach gruppieren), so wird mir nur 1 Term und die entsprechenden Titel angezeigt, die anderen werden Titel werden auch angezeigt aber das Feld für den Term ist leer??
Der Block sieht dann ungefähr so aus
Term Bayern
Titel 1
Titel 2
Term (leider leer)
Titel 3
Titel 4.....
PS: Der php-Code den ich bei den Argumenten nutze ist :
$node = node_load(arg(1));
if ($node && $node->taxonomy) {
foreach($node->taxonomy as $term) {
$terms[]=$term->tid;
}
return implode('+',$terms);
} else {
return;
}
wo ist der Fehler
Danke für eure Hilfe!
tridru
- Anmelden oder Registrieren um Kommentare zu schreiben
Lass dir mal den Inhalt vom
am 30.11.2010 - 19:45 Uhr
Lass dir mal den Inhalt vom Objekt $node->taxonomy ausgeben.
<?php
print_r($node->taxonomy);
?>
Erhälst du hier denn alle Terms, die der Node zugeordnet sind ?
SteffenR
http://www.twitter.com/_steffenr
Drupal-Initiative e.V.
php code
am 01.12.2010 - 21:51 Uhr
Hallo Stephen,
danke für Deine Hilfe!
Ich bin kein php-Spezie, wo muß ich diesen Code einfügen?
Bei den Argumenten macht das keinen Sinn (ich habs probeweise) getestet
Danke tridru
tridru schrieb Hallo
am 02.12.2010 - 08:31 Uhr
Hallo Stephen,
danke für Deine Hilfe!
Ich bin kein php-Spezie, wo muß ich diesen Code einfügen?
Bei den Argumenten macht das keinen Sinn (ich habs probeweise) getestet
Danke tridru
Ersteinmal heisse ich Steffen - nicht Stephen - aber das liest man desöfteren ;).
Hast du im Views denn die Option "Allow multiple terms per argument" erlaubt ?
Views gibt dir auch eine Vorschau der erzeugten SQL - diese könntest du auch einmal im phpmyadmin / deiner Drupal Datenbank testen bzw. schauen, ob für die entsprechenden Nodes auch die Terms vorliegen. Außerdem kannst du in Views die Ausgabe testen - gib im Preview dazu einfach mal eine TermId an und schau was dir dort ausgelesen wird.
SteffenR
http://www.twitter.com/_steffenr
Drupal-Initiative e.V.
Funktioniert
am 02.12.2010 - 11:00 Uhr
Hallo,
ich habe für ein ähnliches Problem eine Lösung gesucht (siehe: http://www.drupalcenter.de/node/32067) und deshalb die oben angegebene Lösung ausprobiert: Funktioniert auf Anhieb. Die einzige Ergänzung, die ich noch gemacht habe, war ein Filter (nach Node:Typ).
Jetzt werden die zum Taxonomie-Begriff passenden Einträge zu jeder Seite als Block in der Seitenleiste angezeigt.
Super!!
Multiple terms
am 02.12.2010 - 11:42 Uhr
Hallo Steffen,
jetzt ist der Name zumindest schon mal richtig ;)
Ja, "Allow multiple terms per argument" ist angehakt, ich habe den "Fehler" jedoch beim rumprobieren gefunden, denn nach der oben genannten Anleitung sollte man auch Duplikate reduzieren auswählen. Dann wird allerdings nur ein Taxonomie-Term angezeigt. Nimmt man das Häkchen raus, sieht man auch alle Terms, allerdings mit dem Nachteil, dass die Titel der Nodes dann natürlich mehrfach auftauchen, z.B. einmal unter Term 1 dann unter Term 2 (da ich mehrere Terms, bis zu 6 aus 2 verschiedenen Vokabularen pro Node vergebe). Wenn ich in den Basiseinstellungen "eindeutig, ja" auswähle hilft, das insofern das alle Terms angezeigt werden, ich aber die doppelten Titel ausschalte. Insofern also schon mal danke für den Denkanstoss!!
So ganz ist es allerdings noch nicht das, was ich wollte, denn ich würde auch gerne die Anzahl der angezeigten Titel pro Stichwort auf 2-3 begrenzen in Views finde ich aber nur die Möglichkeit die Gesamtzahl aller dargestellten Einträge einzustellen (über Basiseinstellungen, Einträge zB. auf 15). Highlight wäre dann, dass ich mindestens auch immer einen Titel angezeigt bekomme für jedes Stichwort (das funktioniert mit den obigen Einstellungen nicht, denn sobald der Titel des Nodes schon mal unter einem Term erschienen ist wird er ja für andere Terms nicht mehr angezeigt,schlecht also wenn einen Term häufig vergeben hat....)
Vielleicht hast Du einen Tip (oder php-Schnipsel), damit das nicht passiert. auf jeden Fall bin ich schon mal ein Stück weiter. Danke
tridru
Zitat: So ganz ist es
am 02.12.2010 - 12:50 Uhr
So ganz ist es allerdings noch nicht das, was ich wollte, denn ich würde auch gerne die Anzahl der angezeigten Titel pro Stichwort auf 2-3 begrenzen in Views finde ich aber nur die Möglichkeit die Gesamtzahl aller dargestellten Einträge einzustellen (über Basiseinstellungen, Einträge zB. auf 15).
Dies sollte sich mit dem Modul http://drupal.org/project/views_limit_grouping umsetzen lassen. Hier kannst du nach einem bestimmten Feld gruppieren ( dies dann in der Ausgabe verbergen ) und die Anzahl der anzuzeigenden Beiträge eingrenzen..
Beispielhaft habe ich dies hier erklärt - http://port11.de/content/views-20-gruppierte-ausgabe-limitieren
SteffenR
http://www.twitter.com/_steffenr
Drupal-Initiative e.V.
Danke Steffen, werde ich in
am 02.12.2010 - 14:10 Uhr
Danke Steffen,
werde ich in Kürze mal ansehen und ausprobieren und melde mich dann ev. noch mal.
tridru