Hier wird sehr kurz erklärt, wie man in WebsiteBaker die gefundenen Textstellen auch auf den HTMLSeiten markiert anzeigt.
In das Template muss folgender Block für das ersetzen der Gefundenen Textstellen.
<?php
ob_start();
page_content();
$str=ob_get_contents();
ob_end_clean();
if($_GET[’string‘]) {
#$str=str_ireplace($_GET[’string‘],’‘.$_GET[’string‘].’‘,$str);
$str=preg_replace(‚#>([^<>]*)(‚.preg_quote($_GET[’string‘]).‘)([^<>]*)<#Ui‘,‘>$1$2$3<‚,$str);
}
echo $str;
?>
Im Searchplugin (/search/search.php) müssen die Zeilen um 213:
$vars = array(‚[LINK]‘, ‚[TITLE]‘, ‚[DESCRIPTION]‘, ‚[USERNAME]‘,’[DISPLAY_NAME]‘,’[DATE]‘,’[TIME]‘,’[TEXT_LAST_UPDATED_BY]‘,’[TEXT_ON]‘,’[SEARCH_STRING]‘);
if($page[$fields[‚modified_when‘]] > 0) {
$date = gmdate(DATE_FORMAT, $page[$fields[‚modified_when‘]]+TIMEZONE);
$time = gmdate(TIME_FORMAT, $page[$fields[‚modified_when‘]]+TIMEZONE);
} else {
$date = $TEXT[‚UNKNOWN‘].‘ ‚.$TEXT[‚DATE‘];
$time = $TEXT[‚UNKNOWN‘].‘ ‚.$TEXT[‚TIME‘];
}
$values = array($link, ($page[$fields[‚title‘]]), ($page[$fields[‚description‘]]), $users[$page[$fields[‚modified_by‘]]][‚username‘], $users[$page[$fields[‚modified_by‘]]][‚display_name‘], $date, $time, $TEXT[‚LAST_UPDATED_BY‘], strtolower($TEXT[‚ON‘]),urlencode($search_string));
um die fettgedruckte Stellen ergänzt werden.
Damit ist werden die Stellen mit dem Treffen mit einem * umgeben, der Bereich kann dann mit CSS entsprechendhervorgehoben werden.
Wie Ihr seht ist das alles keine Zauberei sondern nur ein bissel Tricky 😉
Bis denne euer
Kay