Guten Abend,
ich habe ein kleines Modul für Euch entwickelt. Im Titel wird schon deutlich, worum es geht.
Das Hervorheben im Adminbereich unter Erweiterte Konfiguration -> Such-Optionen anschalten/ausschalten und mit CSS grafisch anpassen.
[ Für Gäste sind keine Dateianhänge sichtbar ]
Installation in 3 Schritten[li]
1. Admintexte definieren (
lang/german/admin/configuration.php)[/li]
Suche:
define('SEARCH_IN_ATTR_DESC','Aktivieren um die Suche in den Produktattributen (z.B. Farbe, Länge) zu ermöglichen'); Danach einfügen:
define('SEARCH_HIGHLIGHT_TITLE','Hervorheben von Suchbegriffen');define('SEARCH_HIGHLIGHT_DESC','Aktivieren um Suchebegriffe in den Ergebnissen hervorzuheben');define('SEARCH_HIGHLIGHT_STYLE_TITLE','Gestaltung der Hervorhebungen');define('SEARCH_HIGHLIGHT_STYLE_DESC','CSS für die Suchergebnis-Hervorhebung (z.B. Schriftfarbe, Hintergrundfarbe, Rahmen, etc.)'); [li]
2. Schleifen für die Suchwort-Hervorhebung einbauen (
includes/modules/product_listing.php)[/li]
Suche:
$module_content[] = $product->buildDataArray($listing);
}
Danach einfügen:
// BOF - h-h-h - 2010-11-05 highlight searchif (SEARCH_HIGHLIGHT
== 'true') { $keywords = explode( ' ', $_GET['keywords']); for ($i=0; $i<count($module_content); $i++) { for ($k=0; $k<count($keywords); $k++) { $module_content[$i][PRODUCTS_NAME
] = str_ireplace($keywords[$k], '<span style="'.SEARCH_HIGHLIGHT_STYLE
.'">'.$keywords[$k].'</span>', $module_content[$i][PRODUCTS_NAME
]); $module_content[$i][PRODUCTS_SHORT_DESCRIPTION
] = str_ireplace($keywords[$k], '<span style="'.SEARCH_HIGHLIGHT_STYLE
.'">'.$keywords[$k].'</span>', $module_content[$i][PRODUCTS_SHORT_DESCRIPTION
]); } } }// EOF - h-h-h - 2010-11-05 highlight search [li]
3. MySQL-Datenbank erweitern[/li]
INSERT INTO configuration
VALUES
('', 'SEARCH_HIGHLIGHT', 'true', 22, 4, '', NOW(), NULL, 'xtc_cfg_select_option(array(\'true\', \'false\'),'),
('', 'SEARCH_HIGHLIGHT_STYLE', 'color:#000;background-color:#eee;border:dotted #000 1px;', 22, 5, NULL, '0000-00-00 00:00:00', NULL, NULL);
Viel Spaß
h-h-h
[
EDIT Tomcraft 21.12.2010: Fehler im SQL-Statement korrigiert.]
[
EDIT h-h-h 03.03.2011: str_replace() mit str_ireplace() ersetzt damit Groß- und Kleinschreibung nicht beachtet wird (benötigt PHP5).]
Linkback: https://www.modified-shop.org/forum/index.php?topic=9131.0