Ich habe tatsächlich den unteren Rand von Google erreicht und versucht herauszufinden, wie jeder Zeile einer Ansicht eine CSS-Klasse hinzugefügt werden kann. Der Trick besteht darin, dass die Klasse für jede Zeile dynamisch anhand einiger Daten vom Knoten bestimmt werden muss, von dem die Ansicht stammt. Die Funktion, die dies für den Knoten sauber macht, ist -
function pgc_preprocess(&$variables) {
$node = $variables['node'];
if ($node->type == "event") {
$variables['event_class'] = '';
$num_trainers = $node->field_number_of_trainers[0]['value'];
$count = count($node->field_trainer);
if($count < $num_trainers) {
$variables['event_class'] = 'red';
} else {
$variables['event_class'] = 'green';
}
return $variables;
}
}
Der Punkt dabei ist, ein Ereignis farblich zu kennzeichnen, bei dem sich nicht genügend Leute angemeldet haben. Auf der Titelseite wird eine Liste der Ereignisse angezeigt, die auch farblich gekennzeichnet sein müssen. Ich hoffe wirklich, dass es eine einfache Lösung in der Art von -
function pgc_preprocess_views_view_unformatted(&$variables) {
// Magic here, preferably having something to
// do with the function I already wrote.
}
Nur <?php print $event_class ?>
in die Ansicht .tpl fallen zu lassen, reicht nicht aus.