Wyszukiwanie po atrybutach klasy (2)

Zgłębiam temat rozpoczęty ostatnio. Wyszukuję za pomocą wbudowanej funkcji advancedsearch. Formatkę wyszukiwania, a w zasadzie jej pola, można zrobić tak jak podano w przykładzie (strona nie jest już rozwijana, ale przykład działa). Ma to ten minus, że atrybuty trzeba wstawić po ich ID, a nie nazwie, ale odpowiednio komentując kod można go zrobić przejżystym.

W mojej wersji zrobiłem wyszukiwanie po atrybutach o ID 362 i 363 (każdy się domyśli, że wyszukuję po Miejscowości i powiecie :-) . Wstawiłem w jednym z własnych szablonów (template) taki kod:

<form action={"/content/advancedsearch/"|ezurl} method="get">
    {* 45, czyli Atrakcja *}
    <input type="hidden" name="SearchContentClassID" value="45" />
    {* 363 - Powiat *}
    Powiat: <input type="hidden"
name="Content_search_attribute_fulltext_classattribute_id[]"
value="363" />
    <input type="text"
name="Content_search_attribute_fulltext_value[]"
value="" />
    {* 362 Miejscowość (attraction_attrib_city) *}
    Miasto: <input type="hidden"
name="Content_search_attribute_fulltext_classattribute_id[]"
value="362" />
    <input type="text"
name="Content_search_attribute_fulltext_value[]"
value="" />

    <input type="submit" value="Search" name="SearchButton">
</form>

To nawet działa, trzeba tylko pamiętać o ustawieniu

[SearchSettings]
AllowEmptySearch=enabled

w pliku settings/override/site.ini.append.php, ew. można jeszcze dołożyć w tej samej sekcji

EnableWildcard=true

, ale to wymagane tylko dla zaawansowanych użytkowników.

Teraz wystarczy tylko ustalić jak zrobić własną stronę z własnym szablonem na którym będzie tylko wyszukiwanie. Można oczywiście utworzyć własną klasę, nawet nie musi mieć atrybutów - wystarczy, że będzie miała nazwę, którą będzie można powiązać z szablonem zawierającym wyłącznie formularz wyszukiwania, ale może można to zrobić prościej.

Kommentare

Bitte melden Sie sich Logan oder registrieren Sie sich um kommentieren zu können.

Just my blog...

Mon Di Mi Do Fr Sa So
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
eZ Publish™ copyright © 1999-2025 eZ Systems AS