Ausgabe der Ergbnisse der Suche anpassen
Eingetragen von legolas (250)
am 28.03.2007 - 14:03 Uhr in
am 28.03.2007 - 14:03 Uhr in
Hallo,
ich suche nach einer Möglichkeit bei Drupal 5.1, bei der Ausgabe der Suchergebnisse die Infos über Author, Datum und Uhrzeit auszublenden. Geht das?
Danke für jeden Tipp
Stefan
- Anmelden oder Registrieren um Kommentare zu schreiben
Module geben ihre Inhalte
am 28.03.2007 - 16:15 Uhr
Module geben ihre Inhalte meist über theme_whatever() aus. Diese Funktion lässt sich fürs jeweilige Template überschreiben. Ausführliche Infos dazu findest du unter http://drupal.org/node/11811
Im search.module generiert folgende Funktion die Ausgabe der einzelenen Suchergebnisse:
<?php
/**
* Format a single result entry of a search query. This function is normally
* called by theme_search_page() or hook_search_page().
*
* @param $item
* A single search result as returned by hook_search(). The result should be
* an array with keys "link", "title", "type", "user", "date", and "snippet".
* Optionally, "extra" can be an array of extra info to show along with the
* result.
* @param $type
* The type of item found, such as "user" or "node".
*
* @ingroup themeable
*/
function theme_search_item($item, $type) {
$output = ' <dt class="title"><a href="/'. check_url($item['link']) .'">'. check_plain($item['title']) .'</a></dt>';
$info = array();
if ($item['type']) {
$info[] = $item['type'];
}
if ($item['user']) {
$info[] = $item['user'];
}
if ($item['date']) {
$info[] = format_date($item['date'], 'small');
}
if (is_array($item['extra'])) {
$info = array_merge($info, $item['extra']);
}
$output .= ' <dd>'. ($item['snippet'] ? '<p>'. $item['snippet'] . '</p>' : '') . '<p class="search-info">' . implode(' - ', $info) .'</p></dd>';
return $output;
}
?>
Diese Funktion wollen wir nun überschreiben. Dazu musst du im Ordner deines Themes die Datei template.php öffnen (falls sie nicht existiert, musst du diese erst noch erstellen) und füge folgendes ein:
<?php
// ueberschreibt die ausgabe der suchergebnisse von search.module
function phptemplate_search_item($item, $type) {
$output = ' <dt class="title"><a href="/'. check_url($item['link']) .'">'. check_plain($item['title']) .'</a></dt>';
$output .= ' <dd>'. ($item['snippet'] ? '<p>'. $item['snippet'] . '</p>' : '') . '</dd>';
return $output;
}
?>
gruss elias
Servus Elias, vielen Dank
am 29.03.2007 - 06:10 Uhr
Servus Elias,
vielen Dank für die ausfühliche Antwort - das wars
Gruß
Stefan