| Mini-Tutorial: ItemId-Problem bei Joomla!-Suche |
|
Kategorie: Tutorials | Geschrieben von Gerald Martin am Mittwoch, 30. September 2009 | 2275x gelesen Es wurde schon an verschiedenen Stellen diskutiert: Nach wie vor liefert das Modul "mod_search" beim Absenden der Suchphrase immer die ItemId des Standardmenüpunkts. Wenn aber gleichzeitig ein Menülink auf "com_search" angelegt ist, soll in den meisten Fällen diese ItemId verwendet werden. Lösung: Template Override!
1. Beide Dateien aus /modules/mod_search/tmpl/ nach /templates/$templatename/html/mod_search/ kopieren.
<?php // no direct access
defined('_JEXEC') or die('Restricted access');
folgenden Code einfügen: /** get Itemid of com_search if exists */ $db = & JFactory::getDBO(); $query = "SELECT id FROM `#__menu` WHERE type='component' AND link LIKE 'index.php?option=com_search&view=search'"; $db->setQuery($query); $items = ($items = $db->loadObjectList()) ? $items:array(); $Itemid = $items[0]->id; 3. Nach <input type="hidden" name="task" value="search" /> noch ein verstecktes Datenfeld einfügen: <input type="hidden" name="Itemid" value="<?php echo $Itemid ?>" />
Aus der Datenbank wird der erste Menüpunkt ausgelesen, der als Such-Komponente (com_search) angelegt ist. Dessen ItemId wird dann übernommen.
Powered by AkoComment Tweaked Special Edition v.1.4.6 |
||||||

Artikel kommentieren