# Térképes és Geo Query hibák: sugár szerinti szűrés, üres lista

> Hogyan jeleníts meg bejegyzéseket kiválasztott sugáron belül gombnyomásra, és mit ellenőrizz, ha a Geo Query nem ad találatot a Listing Gridben.

## Bejegyzések megjelenítése megadott sugáron belül, gombnyomásra

A JetSmartFilters **JetEngine Query Builder Switcher** adatforrásával és a JetEngine Query Builderével olyan szűrőt készíthetsz, amelyben a látogató kiválaszthatja, mekkora távolságon belül lássa a bejegyzéseket.

### A térkép előkészítése

1. Nyisd meg a **JetEngine → JetEngine vezérlőpult → Modulok** oldalt, és az alapmodulok között kapcsold be a **Maps Listings** modult.
2. A **Térképek beállításai** fülön állítsd be a térképszolgáltatót.
3. Az egyéni bejegyzéstípushoz vegyél fel egy **Map** típusú metamezőt a cím tárolására, mentsd, és add meg a címeket a bejegyzéseknél.
4. Hozz létre egy térképes listázást (Map Listing). Egyelőre hagyd így.

![A JetEngine Térképek beállításai füle](./kepek/terkep-beallitasok.webp)

*A JetEngine Térképek beállításai füle* (https://minta-bolt.hu/wp-admin/admin.php?page=jet-engine)

A képen a térképszolgáltató és a címek koordinátáinak beállításai látszanak.

### Lekérdezés az összes bejegyzésre

1. Nyisd meg a **JetEngine → Lekérdezéskészítő** oldalt, és kattints az **Add New** gombra.
2. Add meg a lekérdezés nevét, a **Query Type** legyen **Posts Query**, a **Custom Query ID** mezőbe pedig írj egy egyedi értéket.
3. A **General** fülön válaszd ki a bejegyzéstípust.
4. A **Geo Search** fülön jelölj ki egy pontot a térképen, add meg az **Address Field** nevét (ahol a címek vannak), a **Distance** értékét és a mértékegységet (**Units**).
5. Kattints az **Add Query / Update Query** gombra.

### Lekérdezés a megadott sugarú bejegyzésekre

Készíts még egy lekérdezést ugyanarra a bejegyzéstípusra. Fontos, hogy az új lekérdezés **Custom Query ID** értéke egyedi legyen. A **Geo Search** fülön jelöld ki ugyanazt a helyet, add meg ugyanazt a térképmezőt, a **Distance** mezőbe pedig azt a sugarat írd, amelyen belül a bejegyzéseket mutatni akarod (például 50 km), és válaszd ki a mértékegységet. Mentsd a lekérdezést.

Ez a lekérdezés a látogató számára választható lehetőség lesz. Egyetlen lekérdezést is megtarthatsz, vagy több hasonlót készíthetsz különböző távolságokkal, így több választási lehetőséget adsz.

### A Query Switcher szűrő

1. Nyisd meg a **Smart Filters** oldalt, és kattints az **Add New** gombra.
2. A szűrő típusa legyen **Radio**.
3. Az adatforrás (**Data Source**) legyen **JetEngine Query Builder Switcher**, a **Select Query** mezőben pedig válaszd ki az előbb létrehozott lekérdezéseket.
4. A **Query Variable** legyen **Switch JetEngine Query**.
5. Kattints az **Update** gombra.

### A felhasználó helyzetére épülő szűrő

Vegyél fel egy másik szűrőt is, a típusa legyen **User Geolocation**, és mentsd.

### Szűrők és térkép az oldalon

1. Nyisd meg az oldalt, amelyen a térkép és a szűrők megjelennek.
2. Add hozzá a **User Geolocation** widgetet, és válaszd ki az előbb létrehozott szűrőt. A **This filter for** listában válaszd a **JetEngine Maps** értéket, és adj meg egy egyedi **Query ID**-t. Jegyezd meg, később még kell.
3. Add hozzá a **Radio Filter** widgetet, válaszd ki a szűrőt, a **This filter for** értéke szintén **JetEngine Maps**, a **Query ID** pedig ugyanaz legyen, mint a User Geolocation widgetnél.
4. Add hozzá a **Map Listing** widgetet, és az **Address Meta Field** mezőbe írd a térképmező nevét.
5. A widget **Advanced** fülén a **CSS ID** mezőbe írd be ugyanazt a Query ID-t.
6. Kattints a **Publish** gombra.

### Az eredmény

A frontenden alapból az összes helyszín látszik a térképen. A rádiószűrővel kiválaszthatod például az 50 kilométeres sugarat, és ekkor csak az azon belüli helyszínek maradnak.

## A Geo Query nem mutat bejegyzést a Listing Gridben

Ha a Listing Grid nem ír ki bejegyzést, amikor „Geo Query” van beállítva, három dolgot ellenőrizz.

### 1. Ki van jelölve a hely a térképen?

Nyisd meg a **JetEngine → Lekérdezéskészítő** oldalon a lekérdezést. A **Geo Query** (Geo Search) fülön legyen kitűzve egy jelölő a térképen. A lekérdezésnek szüksége van a kijelölt helyre ahhoz, hogy a távolságot kiszámolja és a megfelelő bejegyzéseket adja.

### 2. Egyezik a Query ID?

Ha a Listing Grid szűrőkkel együtt működik, a **General** beállításoknál a **Custom Query ID** legyen helyes. Ugyanaz az azonosító köti össze a Geo Query-t, a Listing Gridet és a hozzá tartozó szűrőt:

- a szűrőnél ugyanez a **Query ID** legyen megadva,
- a lekérdezett Listing Grid **CSS ID** mezőjében is ugyanez az érték álljon.

Ne felejtsd el menteni a lekérdezést.

### 3. Megvannak a címek koordinátái?

Ha a címeket **Text** (szöveg) típusú metamezőben tárolod:

1. Nyisd meg a **JetEngine → JetEngine vezérlőpult → Térképek beállításai** fület, és kapcsold be a **Koordináták előtöltése cím alapján** (Preload coordinates by address) opciót.
2. Kattints az **Add existing meta field** gombra, válaszd a **JetEngine** mezőszolgáltatót, a használt forrást, a **Fields** listában pedig azt a metamezőt, amelyben a címek vannak.
3. Alkalmazd a módosítást.
4. Mentsd újra azokat a bejegyzéseket, amelyek címet tartalmaznak. Így tudja a JetEngine lekérni és eltárolni a címekhez tartozó koordinátákat.

Ellenőrizd a Text mezőben tárolt címet a Google Mapsben is: keresd meg pontosan azt a címet. Ha a Google Maps nem találja meg, a JetEngine sem tudja lekérni a koordinátáit, és a Geo Query sem használhatja.

### Gyakori kérdések

**Miért nem látszik bejegyzés a Geo Query felvétele után?** Ellenőrizd, hogy van kijelölt hely a térképen, és hogy a jelölő jó helyen áll. Szűrők esetén azt is, hogy a Query ID mindenhol egyezik.

**Miért nem működik a Geo Query a Text metamezőben tárolt címmel?** Nézd meg, be van-e kapcsolva a **Koordináták előtöltése cím alapján** opció, jó metamező van-e kiválasztva, és újra lettek-e mentve a címet tartalmazó bejegyzések.

**Miért nem működik egy cím a Geo Query-vel?** Keresd meg a Google Mapsben. Ha ott nem található, a koordinátái nem kérhetők le.

Ha mindent átnéztél, és még mindig nincs találat, ellenőrizd, hogy a bejegyzéseknek érvényes koordinátáik vannak-e, és a Geo Query paraméterei (hely és távolság) megfelelnek-e a keresett területnek.
