Vygenerovaná komponenta po nainstalování do CMS Joomla 3.x.x neobsahovala funkční vyhledávání. Po zadání řetězce do vyhledávacího pole v administrativním rozhraní se nic nestalo a tabulka zůstala v nezměnněné podobě.
Toto je možné velice snadno opravit. Ve administrátorské složce komponenty ve složce models chybí řádek
$query->where('( a.name LIKE '.$search.' )');
Tento přidejte do funkce getListQuery(), která se nachází ve třídě NazevKomponentyModelPohled (tedy například DiskuzeModelPrispevky)
Původní zdrojový kód:
// Filter by search in title
$search = $this->getState('filter.search');
if (!empty($search)) {
if (stripos($search, 'id:') === 0) {
$query->where('a.id = ' . (int) substr($search, 3));
} else {
$search = $db->Quote('%' . $db->escape($search, true) . '%');
}
}
Opravený zdrojový kód:
// Filter by search in title
$search = $this->getState('filter.search');
if (!empty($search)) {
if (stripos($search, 'id:') === 0) {
$query->where('a.id = ' . (int) substr($search, 3));
} else {
$search = $db->Quote('%' . $db->escape($search, true) . '%');
$query->where('( a.name LIKE '.$search.' )');
}
}
Žádné komentáře:
Okomentovat