Upravujeme výsledky vyhledávání v Drupalu

Základní struktura výsledků vyhledávání v Drupalu neposkytuje vždy zrovna takovou strukturu dat, jakou bychom si představovali. Formátování lze častečně přizpůsobit pro jednotlivé typy obsahu v nastavení zobrazení polí (display field), opravdu komplexním a silným nástrojem je však vytvoření vyhledávacích šablon v příslušném theme.

Pro úpravu výsledků vyhledávání otevřete složku modulu search (ten je součástí jádra Drupalu, najdete ji tedy v kořenovém adresáři modules) a překopírujte si do vašeho theme soubory search-result.tpl.php a search-results.tpl.php. Když do nich nakouknete, zjistíte, že první z nich poskytuje formátování pro jeden konkrétní výsledek, který se vypisuje v podobě proměnné $search_results v souboru search-results.tpl.php, jenž poskytuje jakýsi "obal", kde je možné nastavit záhlaví a zápatí výsledků.

Pro názornost si představte, že chcete výsledky upravit do tabulky. Pak v search-results.tpl.php bude záhlaví tabulky <th></th> s jednotlivými buňkami, a výpisem proměnné $search_results, obalené na začátku a konci tagy <table></table> a v search-result.tpl.php pak výpis jednotlivého řádku tabulky. Jednotlivé položky vyhledávání jsou dostupné v poli $result, které si nechejte vypsat v šabloně. Např. přidaná CCK pole většinou vypíšete pomocí obecného zápisu $result['node']->field_nazev[0]['value'].

Na závěr ještě k vylepšení stylování samotného vyhledávacího formuláře: k tomu poslouží soubory search-block-form.tpl.php a search-theme-form.tpl.php. Ty obsahují na začátku poměrně výmluvnou nápovědu, jak s nimi případně pro případnou editaci naložit.

Verze drupalu: