# REST API-végpont beállítása egyéni lekérdezéshez

> Egy CCT-lekérdezés eredményének átvitele másik weboldalra: végpont regisztrálása, felvétele a másik oldalon, listázási sablon és Listing Grid.

Ebben a példában egy egyéni tartalomtípus (CCT) elemeit, esemény-listát viszel át egy másik WordPress-oldalra. Szükséges: Elementor (ingyenes), blokkszerkesztő vagy Bricks, és mindkét oldalon a JetEngine.

## 1. A főoldalon: a CCT előkészítése

1. A **JetEngine → JetEngine → Modulok** fülön kapcsold be az **Egyéni tartalomtípusok** modult.
2. A **JetEngine → Egyéni tartalomtípusok** oldalon hozz létre egy új CCT-t, vagy szerkeszd a meglévőt. Az **Általános beállításoknál** add meg a nevet; a slug automatikusan kitöltődik. A slugban csak latin betű lehet, szóköz nélkül (kötőjel vagy aláhúzás használható).
3. A **Fields** fülön vedd fel a mezőket. A példában: **Name** (Text), **Date** (Date), **Image** (Media).
4. A **Media** mezőnél válaszd a **Media URL** értékformátumot. A **Media ID** formátumnál ütközés lehet, ha a másik oldalon már van ugyanilyen azonosítójú kép.
5. Mentsd a CCT-t, majd vegyél fel néhány elemet az **Új hozzáadása** gombbal.

## 2. A főoldalon: a lekérdezés

1. A **JetEngine → Lekérdezéskészítő → Új hozzáadása** oldalon add meg a nevet, a **Lekérdezés típusa** legyen **Egyéni tartalomtípus-lekérdezés**.
2. Kapcsold be a **REST API-végpont regisztrálása** kapcsolót. A **Végpont névterét** és **útvonalát** tetszés szerint (SEO-barát módon) átírhatod, a **Hozzáférés korlátozása** listában beállíthatod a nyilvános elérést vagy a szerepkör- és képesség-alapú korlátozást.
3. A **Lekérdezési argumentumoknál** vegyél fel argumentumot. A példában a neve „sort”, az alapértéke „asc”, az események dátum szerinti növekvő rendezéséhez.
4. Az egyéni tartalomtípus-lekérdezés szakaszban a **From Content Type** listából válaszd ki a CCT-t.
5. A regisztrált argumentumot rendeld a lekérdezés beállításaihoz. A példában az **Order & Order By** résznél új rendezési paramétert adtál hozzá: **Order By** „Date”, **Order** „From lowest to highest (1, 2, 3; a, b, c)”, **Type** „Date”.
6. Állítsd be a többit igény szerint, és kattints a **Lekérdezés hozzáadása/frissítése** gombra.
7. Másold ki a **REST API-végpont URL-jét**, vagy argumentumok esetén az argumentumokkal kiegészített példa-URL-t.

## 3. A második oldalon: a végpont felvétele

1. A **JetEngine → JetEngine → Modulok** fülön kapcsold be a **REST API-listázások** modult, kattints a **Mentés** gombra, és várd meg az újratöltést.
2. A **REST API-végpontok** fülön kattints az **Új végpont** gombra.
3. Add meg a nevet (opcionális), az **API Endpoint URL** mezőbe másold be a címet, az **Items path** legyen `/`, és szükség esetén állítsd be az **Authorization** részt.
4. A **Send Request** gombbal ellenőrizd a kapcsolatot. Ha minden rendben, a **Status** „Connected” lesz.
5. Kattints a **Mentés** gombra.

## 4. A második oldalon: listázási sablon

1. A **JetEngine → Listázások/komponensek** oldalon az **Új elem hozzáadása** gombbal válaszd a **REST API Endpoint** listázási forrást, és a **From API endpoint** listából a felvett végpontot. A nevet megadhatod, a nézet lehet Elementor, Blocks (Gutenberg) vagy Bricks. Kattints a **Listázási elem létrehozása** gombra.
2. A szerkesztőben tegyél be egy **Dynamic Field** widgetet. A **Source** maradjon **Post/Term/User/Object Data**, az **Object Field** listában a **REST API** szakaszból válaszd ki a megjelenítendő mezőt, például a „name” mezőt.
3. Másold a widgetet, és válaszd a „date” mezőt. Dátumnál bekapcsolhatod a **Filter field output** kapcsolót és a **Format date** callbacket a formátum testreszabásához.
4. A képet kétféleképpen jelenítheted meg: **Dynamic Image** widgettel, a **Source** listában a **REST API** szakasz „image” mezőjét kiválasztva; vagy **Dynamic Field** widgettel az „image” mezőre, bekapcsolt **Customize field output** kapcsolóval, és a **Field format** mezőbe ezt írva:

```html
<img src='%s'/>
```

5. Frissítsd a sablont.

## 5. Eredmény

Nyisd meg az oldalt a szerkesztőben, tegyél rá egy **Listing Grid** elemet, és válaszd ki az új listázási sablont. Az események dátum szerint növekvő sorrendben jelennek meg. Állítsd be az oldalt, és tedd közzé.
