Taxonomy-Terms in View-Row-Classes
am 06.09.2012 - 09:54 Uhr in
Hey,
ich habe in den Views die Frontpage-View aktiviert um meine Startseite zu ändern. Angezeigt werden sollen entweder Node-Fields (Title/Body/Link) oder Node-Teaser (je nachdem welche Variante für mein Anliegen geeigneter ist), welche:
1) Den Term "Grün" OR
2) Den Term "Blau" OR
3) Den Term "Rot" enthalten.
Das funktioniert.
Jetzt möchte ich jede präsentierte "Einheit" abhängig vom Term themen, wozu der Term in eine view-class geschrieben werden müsste. Funktioniert das in den Views?
Gruß,
SuperEngineer 64
- Anmelden oder Registrieren um Kommentare zu schreiben

Hallo,ich würde das ganze
am 06.09.2012 - 14:47 Uhr
Hallo,
ich würde das ganze wie folgt lösen:
Im view unter FORMAT -> Show:Fields auswählen und die gewünschten Felder unter FIELDS auswählen.
Bei dem Term nur das plain Term zurückgeben oder auch mit der tid arbeiten.
In der template.php dann die THEME_preprocess_views_view_unformatted einfügen und die class anhängen:
<?php/**
* Display the simple view of rows one after another
*/
function THEME_preprocess_views_view_unformatted(&$vars) {
$view = $vars['view'];
$rows = $vars['rows'];
if($view->name =='frontpage' && $view->current_display == 'page'){
foreach ($rows as $id => $row) {
//Adding term as class
$vars['classes_array'][$id] .= " ".$view->style_plugin->rendered_fields[$id]['field_tags'];
}
}
}
?>
Denke das geht in die richtige Richtung.
Der Code basiert auf der Standard Installation.
Viele Grüße
Vielen Dank dafür! 1) Bei dem
am 06.09.2012 - 15:01 Uhr
Vielen Dank dafür!
1) Bei dem Term nur das plain Term zurückgeben oder auch mit der tid arbeiten.
-> Was meinst du damit? Und soll ich den Term als Hidden-Field mit einbeziehen?
2) Habe den Code in meine Template kopiert, aber es tut sich nichts. Ich nehme ann ich sollte noch was zwischen die " " schreiben?
Gruß,
SE64
Im Views kannst du auch
am 06.09.2012 - 15:47 Uhr
Im Views kannst du auch Klassen (aus den angezeigten Ergebnissen) für die Rows vergeben.
Stimmt das ist wohl die
am 06.09.2012 - 15:58 Uhr
Ja das Term als Hidden-Field mit einbeziehen.
Stimmt das ist wohl die einfachere Lösung :)
Das entsprechende Token unter Format -> Settings -> Page: Style options -> Row class eintragen.
In diesem default view lautet es: [field_tags]
Viele Grüße
Hmmm..Also ich hab nun:1)
am 06.09.2012 - 16:29 Uhr
Hmmm..
Also ich hab nun:
1) Unformatted list | Settings -> Dort unter Row class: [field_tags]
2) Fields + das "Content: All taxonomy terms" field als hidden.
3) Deinen PHP-Snipped 1:1 in meine template.php getan, hochgeladen, Cache geleert.
- Aber es funktioniert nicht. Als Klasse wird lediglich hinten ein "[field_tags]" gehangen, aber kein Term.
Unter dem row-class feld steht im übrigen noch: The class to provide on each row. You may use field tokens from as per the "Replacement patterns" used in "Rewrite the output of this field" for all fields.
Ich weiß welche Felder gemeint sind, aber nicht was der Satz aussagen will. :\
Gruß,
SE64
Das Snippet brauchst du bei
am 06.09.2012 - 16:47 Uhr
Das Snippet brauchst du bei der Lösung von caw nicht.
Geh mal auf FIELDS -> irgend ein Field -> dann Rewrite results -> Rewrite the output of this field -> unter der textarea steht dann "Show Replacement patterns".
Das dann ausklappen und dort müsste das Token dabei stehen.
Viele Grüße
das field tags muss vor dem
am 06.09.2012 - 16:52 Uhr
das field tags muss vor dem feld stehen (in der reihenfolge der felder) in dem der token verwendet wird
Bei der Verwendung als Row
am 06.09.2012 - 17:02 Uhr
Bei der Verwendung des Tokens als Row class spielt die Reihenfolge der Felder keine Rolle denke ich.
donflow schrieb Bei der
am 06.09.2012 - 17:08 Uhr
Bei der Verwendung des Tokens als Row class spielt die Reihenfolge der Felder keine Rolle denke ich.
doch soweit ich weiß spielt die reihenfolge eine rolle. token die genutzt werden müssen immer vor deren nutzung vorhanden sein
In diesem Fall ist aber die
am 07.09.2012 - 06:48 Uhr
In diesem Fall ist die Anordnung der Felder aber egal.
Das Token wird in keinem anderen Feld benutzt sondern in der Row.
<div class="views-row views-row-1 views-row-odd views-row-first blau"><div class="views-field views-field-title">[...]</div>
<div class="views-field views-field-body">[...]</div>
<div class="views-field views-field-field-tags">[...]</div>
</div>
Jetzt hats geklappt. Ich hab
am 10.09.2012 - 09:34 Uhr
Jetzt hats geklappt.
Ich hab Anfangs nicht ganz verstanden das ich [field_tags] bei den UNformatted list Settings, UND bei dem Tax-Field eintragen musste.
Vielen Dank euch!
Gruß,
SE 64