PHP-Problem in der template.php
am 20.12.2007 - 17:07 Uhr in
Ich kenne mich mit PHP kaum aus und möchte nun einen View für Tabellen themen und habe dabei den folgenden Code hier http://drupal.org/node/87367#comment-220560 gefunden und in der template.php eingesetzt:
function phptemplate_views_view_wohnungs_uebersicht($view, $nodes, $type) {
$header = array();
foreach ($view->field as $field) {
$cell['data']=$field['label'];
$cell['class']=$field['header'];
$header[] = $cell;
}
$fields = _views_get_fields(); foreach ($nodes as $node) {
$row = array();
foreach ($view->field as $field) {
$cell['data'] = views_theme_field('views_handle_field', $field['queryname'], $fields, $field, $node, $view);
$cell['class']='view-field-'.$field['queryname'];
$row[] = $cell;
}
$rows[] = $row;
}
return theme('table', $header, $rows, array('class' => 'show-table'));
}
Nun kommt folgende Fehlermeldung:
warning: Invalid argument supplied for foreach() in E:\Programs\typo3\htdocs\drupal\themes\garland\template.php on line 163.
Line 163 ist:
$fields = _views_get_fields(); foreach ($nodes as $node) {
Wenn ich das richtig verstehe, müsste für ($nodes as $node) was anderes hin?
Aber was? Die Table-Header werden angezeigt, aber dann nix mehr. Ohne dem Code in der template.php zeigt es mir Tabellen an, aber eben nicht so wie ich's gerne hätte.
Weiss da jemand, wie es richtig sein sollte?
Gruß Rolf
- Anmelden oder Registrieren um Kommentare zu schreiben
Fehler gefunden
am 21.12.2007 - 00:52 Uhr
Das Problem war offensichtlich, daß bei der Funktion das "table" gefehlt hat. Richtig ist es so (zumindest funktioniert es so):
function phptemplate_views_view_table_wohnungs_uebersicht($view, $nodes, $type)
Und natürlich muß der View auf "Tabellenansicht" gestellt werden.