Tabellen themen
dereine — 11. Juni 2008 - 16:09
Wenn man Tabellen ausgeben möchte, dann ist jede Zeile einzeln mit ... sehr müßsam. Dafür bietet Drupal eine einfache Theme-Funktion welche viel Arbeit abnimmt: theme_table($header, $rows, $attributes = array(), $caption = NULL);
Um nun z.B. eine Liste an Nodes in eine Tabelle zu verpacken
<?php
foreach ($nodes as $node) {
$row = array();
// fügt die Felder in die Zeile ein
$row[] = check_plain($node->title);
$row[] = format_date($node->created);
$row[] = theme('username', user_load(array('uid' => $node->uid)));
$row[] = $node->comment_count;
//Fügt eine CSS Klasse hinzu
$row = array('data' => $row, 'class' => $node->type);
//Fügt die Zeile zu alles Zeilen hinzu
$rows[] = $row;
}
//Baut den Header
$header = array(t('Title'), t('Created'), t('Name'), t('Comments'));
//gibt die Tabelle aus und fügt die css klasse foo dazu
print theme('table', $header, $rows, array('class' => 'foo'));
?>
foreach ($nodes as $node) {
$row = array();
// fügt die Felder in die Zeile ein
$row[] = check_plain($node->title);
$row[] = format_date($node->created);
$row[] = theme('username', user_load(array('uid' => $node->uid)));
$row[] = $node->comment_count;
//Fügt eine CSS Klasse hinzu
$row = array('data' => $row, 'class' => $node->type);
//Fügt die Zeile zu alles Zeilen hinzu
$rows[] = $row;
}
//Baut den Header
$header = array(t('Title'), t('Created'), t('Name'), t('Comments'));
//gibt die Tabelle aus und fügt die css klasse foo dazu
print theme('table', $header, $rows, array('class' => 'foo'));
?>



Kommentar hinzufügen