MyCashflow'n maksullisten palvelupakettien hakukoneeseen kuuluvat haun suodatustyökalut, joiden avulla asiakas voi rajata hakunsa koskemaan valittuja tuoteryhmiä tai -merkkejä tai hintahaarukkaa. Tässä artikkelissa esitellään hakusuodattimien toteuttaminen kaupan teemassa.
Oheinen esimerkki koskee vain maksullisia MyCashflow-palvelupaketteja. Ilmainen palvelupaketti käyttää rajoitettua hakukonetta, jossa hakusuodatintagit eivät ole käytössä.
Hakusuodatintyökalut lisätään tavallisesti hakutulossivulle, missä kävijä voi käyttää suodattimia rajaamaan tekemänsä haun tuloksia.
Hakusuodattimet tulostetaan {SearchFilters}-tagin avulla. Oletusarvoisesti tagi tulostaa kaikki saatavilla olevat hakutyökalut. Useimmiten {SearchFilters}-tagin oletustulostus soveltuu sellaisenaan suodatintyökalujen toteuttamiseen, mutta tarpeen vaatiessa tagin helper-attribuutissa voidaan määritellä suodatinlistan tarkempi merkkaus ja sisältö.
Tässä esimerkissä suodatinlistaelementin merkkaus on sijoitettu tiedostoon helpers/search-filter.html:
{SearchFilters(
helper: 'helpers/search-filter'
)}Alla näet esimerkin helpers/search-filter.html-tiedoston sisällön:
helpers/search-filter.html<h3>{SearchFilterName}</h3>
{SearchFilterOptions(
before: '<ul>',
helper: 'helpers/search-filter-options',
after: '</ul>'
)}Tiedostossa tulostetaan suodatintyypin nimi <h3>-otsikkoon käyttämällä {SearchFilterName}-tagia. Nimen lisäksi jokaisesta hakusuodattimesta tulostetaan <ul>-muotoisena listana suodatinvalinnat käyttämällä {SearchFilterOptions}-tagia. Suodatinvalintojen merkkaus puolestaan määritellään alla näkyvässä helpers/search-filter-options.html-tiedostossa.
helpers/search-filter-options.html<li>
<a href="{SearchFilterOptionSelectUrl}">{SearchFilterOptionName}</a> ({SearchFilterOptionResultCount})
{SearchFilterOptionRemoveUrl(
before: '<a href="',
after: '">{%Delete}</a>'
)}
</li>Hakusuodatinvalinnoissa tulostetaan seuraavat osat:
- Hakusuodattimen valintalinkki tulostetaan
{SearchFilterOptionSelectUrl}-tagillaValintalinkin avulla asiakas ottaa suodattimen käyttöön. Valittu suodatin lisätään hakutulossivun URL-osoitteeseen GET-parametrina.
- Hakusuodatinvalinnan nimi tulostetaan
{SearchFilterOptionName}-tagillaValinnan nimi voi olla tuoteryhmän tai -merkin nimi tai hintahaarukka merkkijonona.
- Hakusuodattimella löytyvien tuotteiden määrä tulostetaan
{SearchFilterOptionResultCount}-tagillaTuotemäärässä otetaan huomioon kaikki valitut suodattimet ja asiakkaan syöttämä hakusana.
- Ja hakusuodattimen poistolinkki tulostetaan
{SearchFilterOptionRemoveUrl}-tagillaPoistolinkki tulostetaan vain silloin, kun hakusuodatin on valittu, joten tagin
after / before-attribuuteissa määritelty merkkaus ei myöskään näy, jos suodatin ei ole käytössä.Esimerkissä haetaan sanakirjasta tagimerkkauksella
{%Delete}teksti 'Poista', jotta esimerkki toimii monikielisissä verkkokaupoissa.
Huomaa että valinta- ja poistolinkkien tagit tulostavat vain URL-osoitteen, joten niitä käytetään linkkielementin kohteena.
{SearchFilters}-tagin oletustulostus sisältää kaikki yllä listatut ominaisuudet, joten se on useimmiten sellaisenaan sopiva hakutyökalujen toteuttamiseen.
Jos sinulle jäi kysymyksiä aiheeseen liittyen, ota asia puheeksi MyCashflow'n asiakaspalvelun kanssa.
