Tovább a tartalomhoz

Szűrők a Lekérdezéskészítő forrásával (JetSmartFilters)

Szűrő opcióinak feltöltése lekérdezésből, és a Range szűrő minimum- és maximumértékeinek lekérése lekérdezésből.

Két feladatot oldhatsz meg a Lekérdezéskészítő és a JetSmartFilters együttes használatával: a szűrő opciói jöhetnek lekérdezésből, és a Range szűrő határértékei is.

Követelmény: JetEngine, JetSmartFilters, és Elementor (ingyenes), blokkszerkesztő vagy Bricks.

A példa a termékkategóriákat névsorba rendezi (az alapértelmezett, létrehozás szerinti sorrend helyett), és a „Nem kategorizált” kategóriát kihagyja.

  1. A JetEngine → Lekérdezéskészítő → Új hozzáadása oldalon add meg a nevet, a típus legyen Kifejezések lekérdezése.
  2. Az Általános fülön a Taxonómia legyen „Termékkategóriák”, az Order By „Name”, az Order „From lowest to highest values”.
  3. Az Include/Exclude fülön az Exclude mezőbe írd a „Nem kategorizált” kategória azonosítóját.
  4. Kattints a Lekérdezés hozzáadása gombra.
  1. A JetSmartFilters → Új hozzáadása oldalon válassz szűrőtípust: Radio, Checkbox, Select vagy Visual, az adatforrás pedig legyen JetEngine Query Builder.
  2. A Select Query mezőben válaszd ki a lekérdezést.
  3. A Property to get Value from mezőbe azt a tulajdonságot írd, amelyik a szűrés értéke. Kifejezéseknél ez a kifejezés azonosítója, a neve term_id. A pontos tulajdonságnevet a lekérdezésben az Eredmények előnézete kapcsolóval nézheted meg.
  4. A Property to get Label from az opció felirata az oldalon: itt a name.
  5. A Query Variable mezőbe a szűrendő taxonómia kerül. A mellette lévő Dynamic Tag gombbal válaszd a Taxonomy lehetőséget, és ott a „Termékkategóriák” taxonómiát.
  6. Töltsd ki a Filter Labels részt, és kattints a Frissítés gombra.
  1. A szerkesztőben tedd be a szűrő widgetjét (a példában Checkboxes Filter), és a Select filter mezőben válaszd ki az új szűrőt.
  2. A This filter for mezőben válaszd a JetEngine szolgáltatót, mert Listing Gridet szűrsz.
  3. Tegyél az oldalra egy Listing Grid widgetet is.

Az előlapon az opciók ábécésorrendben vannak, és a szűrő a kiválasztott termékkategória szerint szűri a termékeket.

A Range szűrő minimuma és maximuma lekérdezésből

Szekció neve “A Range szűrő minimuma és maximuma lekérdezésből”

A Range szűrő határértékei egy lekérdezés eredményéből is jöhetnek, például a lekérdezett termékek legalacsonyabb és legmagasabb áraiból.

Követelmény: egy PHP-kódrészletek beillesztésére alkalmas bővítmény (például Code Snippets), WooCommerce termékek árral, JetEngine listázási sablonnal a termékadatokhoz, és JetSmartFilters.

A Snippets → Új hozzáadása oldalon hozz létre egy kódrészletet (például „JetEngine Query Source for Range Filter” néven), amelyik egy új callbacket ad a Range szűrőhöz, hogy a minimumot és a maximumot egy JetEngine-lekérdezésből kérje le. Mentsd és kapcsold be: Save and Activate.

  1. A Lekérdezéskészítőben hozz létre Bejegyzések lekérdezése típusú lekérdezést. Az Egyéni lekérdezés-ID legyen például price-range: ez köti össze a lekérdezést, a szűrőt és a szolgáltatót.
  2. Az Általános fülön a bejegyzéstípus legyen „Termékek”.
  3. A Taxonómiai lekérdezés fülön (opcionális) szűkíthetsz kategóriára: Taxonomy „Termékkategóriák”, Field „Slug”, Terms például business.
  4. Mentsd a lekérdezést.
  1. A JetSmartFilters → Új hozzáadása oldalon a szűrőtípus legyen Range.
  2. A Get min/max dynamically listában válaszd a Get from JetEngine Query lehetőséget (a kódrészlet aktiválása után jelenik meg), majd a Select Query listában a lekérdezést.
  3. A Query Variable mezőbe írd: _price. Ez a WooCommerce meta kulcsa, amelyben az ár tárolódik. Más numerikus mezőhöz a saját meta kulcsát add meg.
  4. Töltsd ki a Filter Labels részt, és frissítsd.
  1. Tedd be a Range Filter widgetet. A Select filter mezőben válaszd ki a szűrőt, a This filter for listában a JetEngine lehetőséget, a Query ID pedig legyen price-range.
  2. Tedd be a Listing Grid widgetet, válaszd ki a listázási sablont (az oszlopszámot beállíthatod).
  3. A Custom Query fülön kapcsold be a Use Custom Query kapcsolót, és válaszd ki a lekérdezést.
  4. A Speciális fülön a CSS ID mezőbe ugyanazt az azonosítót írd: price-range.
  5. Tedd közzé az oldalt.

Az előlapon a csúszka értékeinek módosításakor a Listing Grid a megadott ártartományba eső termékeket mutatja.

Készült:

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások