Listing Grid AJAX-szűrés közben: töltőikon és elrejtés szűrés előtt
Egyedi töltőikon a Listing Grid fölé AJAX-szűrés idejére, és a lista elrejtése addig, amíg a látogató nem szűr.
Két apró trükk a JetSmartFilters szűrőivel együtt használt Listing Gridhez: saját töltőikon a szűrés idejére, és a lista elrejtése, amíg nincs szűrés. Mindkettőhöz a Listing Grid és legalább egy AJAX alkalmazási típusú szűrő kell az oldalon. Az ingyenes Elementor, a blokkszerkesztő és a Bricks is jó; az Elementoros lépések alább.

A képen a JetEngine → Listázások/komponensek oldal látszik: innen nyitod meg a listázási elemet, amelyet a Listing Grid megjelenít.
Egyedi töltőikon szűrés közben
Szekció neve “Egyedi töltőikon szűrés közben”Alapból a Listing Grid áttetszővé válik, amíg az AJAX-szűrő betölti az új találatokat. Ha ezt egy forgó ikonra cseréled, CSS-re és JavaScriptre van szükség. A kódok beillesztéséhez bármelyik egyéni CSS/JS bővítmény jó (a példában a Simple Custom CSS and JS).
Az ikon elhelyezése az oldalon
Szekció neve “Az ikon elhelyezése az oldalon”- A Listing Grid widget fölé tegyél egy szakaszt, és húzd bele az Elementor Icon és Heading widgetjét. A tartalmat igazítsd a kedvedhez.
- A Listing Grid widget Advanced fülén a CSS ID mezőbe írj egy egyedi azonosítót (például
my-product-listing). - A szűrő widgetjénél ugyanezt az azonosítót add meg a Query ID mezőben.
- Az ikont és a címet tartalmazó oszlop CSS ID mezőjébe is írj egy új, egyedi azonosítót (például
loading_icon).
Animáció és alapértelmezett elrejtés
Szekció neve “Animáció és alapértelmezett elrejtés”A Custom CSS & JS → Add Custom CSS oldalon add hozzá a következő kódot. A loading_icon helyére a saját oszlopod CSS ID-ja kerül:
#loading_icon { display: none;}#loading_icon i { -webkit-animation: fa-spin 2s infinite linear; animation: fa-spin 2s infinite linear;}Az első blokk elrejti a töltősablont az oldal betöltésekor, a második megforgatja az ikont.
A megjelenés feltétele
Szekció neve “A megjelenés feltétele”A töltősablon megjelenítését és elrejtését egy JavaScript-kód vezérli, amely a szűrés indulásakor megmutatja, a befejezésekor elrejti az oszlopot. Három értéket kell a saját oldaladra átírni a kódban:
- az oldal slugját a példában szereplő
jetsmartfilter-jetlisting-custom-spinnerhelyére; - az ikon oszlopának CSS ID-ját a
itchy-loaderhelyére; - a Listing Grid CSS ID-ját a
my-product-listinghelyére.
Ha több kódot illesztettél be, a már használt részt ne másold be még egyszer. Mentés után nézd meg az oldalt a frontenden: szűrés közben a forgó ikon látszik.
A lista elrejtése szűrés előtt
Szekció neve “A lista elrejtése szűrés előtt”Ha azt szeretnéd, hogy a Listing Grid csak akkor jelenjen meg, amikor a látogató már keresett vagy szűrt, a szűrőt és a listát külön kell összekötni néhány CSS-osztállyal. A példában keresőszűrő szerepel, de bármelyik JetSmartFilters szűrőtípussal működik.
A szűrő létrehozása
Szekció neve “A szűrő létrehozása”- Nyisd meg a Smart Filters → Add New oldalt.
- Add meg a szűrő nevét, a típusa legyen Search, a Search by értéke Default WordPress search.
- Ha szeretnéd, állítsd be a helyőrzőt (Placeholder), a Filter Label és az Active Filter Label mezőt.
- Kattints az Update gombra.
A szűrő és a lista az oldalon
Szekció neve “A szűrő és a lista az oldalon”- A szerkesztőben tedd az oldalra a keresőszűrő blokkot, widgetet vagy elemet.
- A Select Filter mezőben válaszd ki az új szűrőt, a This filter for értéke Listing Grid legyen, az Apply Type pedig például AJAX on typing.
- Add hozzá a Listing Grid blokkot, widgetet vagy elemet, és a General fülön válaszd ki a listázási elemet.
- A Listing Grid Advanced fülén írd be a
hide-before-filterosztályt:- blokkszerkesztőben az ADDITIONAL CSS CLASS(ES) mezőbe,
- Elementorban a CSS Classes mezőbe,
- Bricksben a STYLE fül CSS szakaszának egyéni CSS-osztály mezőjébe.
- Hogy a lista az oldal betöltésekor azonnal rejtve legyen, add hozzá a
hide-listingosztályt is, szóközzel elválasztva. - Ha a szűrők visszaállítása után is újra el kell tűnnie a listának, tedd hozzá a
hide-on-resetosztályt is.
CSS és JavaScript
Szekció neve “CSS és JavaScript”Az osztályok önmagukban nem rejtenek el semmit: a hozzájuk tartozó stílust és szkriptet az oldalon kell elhelyezni. A legegyszerűbb egy Custom HTML blokk (Elementorban HTML widget, Bricksben Code elem), amelybe beírod a kódot, majd az oldalt közzéteszed. Mielőtt kódot illesztesz be, készíts biztonsági mentést vagy próbáld ki egy tesztoldalon.
Eredmény
Szekció neve “Eredmény”A frontenden először csak a keresőmező látszik. Amint a látogató begépel egy szót, megjelenik a Listing Grid a találatokkal.
Készült: