Kapcsolatok kezelése REST API-val
A kapcsolat adatainak lekérdezése és a kapcsolódó elemek frissítése, cseréje, leválasztása REST API-n keresztül.
A kapcsolatok adatait REST API-n át is lekérheted és módosíthatod, például két weboldal között. Szükséges: aktív JetEngine egy létrehozott kapcsolattal, és egy REST-kéréseket küldő alkalmazás (a példa az Advanced REST Client, de bármelyik megfelel).
A végpontok bekapcsolása
Szekció neve “A végpontok bekapcsolása”- Menj a JetEngine → Kapcsolatok oldalra, és kattints a kapcsolat Szerkesztés hivatkozására.
- Kapcsold be a Tétel/tételek lekérdezésére szolgáló REST API-végpont regisztrálása kapcsolót. Megjelenik a végpont URL-je, benne három címmel:
GET /wp-json/jet-rel/<kapcsolat azonosítója>: a kapcsolat összes adata;GET /wp-json/jet-rel/<kapcsolat azonosítója>/children/<elem azonosítója>: a megadott elem gyermekei;GET /wp-json/jet-rel/<kapcsolat azonosítója>/parents/<elem azonosítója>: a megadott elem szülei.
- A Hozzáférési jogosultság mezőben megadhatod, melyik jogosultsággal rendelkezők érhetik el az adatot (például
edit_pages: csak szerkesztők és adminisztrátorok). Üresen hagyva nincs korlátozás, a végpont nyilvános. - Kapcsold be a Frissítést végző REST API-végpont regisztrálása kapcsolót is, ha módosítani is akarsz. Ez egy
POST /wp-json/jet-rel/<kapcsolat azonosítója>végpontot ad. - Kattints a Kapcsolat frissítése gombra.
A frissítő kérés felépítése
Szekció neve “A frissítő kérés felépítése”A kérés törzse (JSON) a következőket tartalmazza:
| Kulcs | Jelentés |
|---|---|
parent_id |
A szülő elem azonosítója (vagy azonosítók tömbje). |
child_id |
A gyermek elem azonosítója (vagy azonosítók tömbje). |
context |
child: a szülő oldaláról frissíted a gyermekeket; parent: a gyermek oldaláról frissíted a szülőket. |
store_items_type |
update: az új elemek hozzáadódnak a meglévőkhöz; replace: a meglévő kapcsolatok törlődnek, és az újak kerülnek a helyükre; disconnect: a megadott elemek leválnak, újak nem kerülnek be. |
meta |
Nem kötelező: a kapcsolat metamezői (név és érték párok). |
A kéréshez a fejlécben add meg a Content-Type: application/json értéket; ha kell, az Authorization fejlécet is. A kérés módja POST, a címe a frissítő végpont. A törzs típusa JSON, nyers (raw) bevitellel.
Példák
Szekció neve “Példák”Gyermek hozzáadása a szülőhöz
Szekció neve “Gyermek hozzáadása a szülőhöz”{ "parent_id": 2, "child_id": 1310, "context": "child", "store_items_type": "update"}A 2-es azonosítójú szülőhöz hozzáadja az 1310-es azonosítójú gyermeket.
Metamezők frissítése
Szekció neve “Metamezők frissítése”A törzsbe vedd fel a meta kulcsot:
"meta": {"tour_start_date": "2024-06-24", "_pricing": "300"}Itt a tour_start_date és a _pricing a kapcsolat metamezői (szöveg és dátum), az értékek pedig a mentendő adatok. Minden, a kapcsolatnál elérhető metamező-típus frissíthető. Az eredményt a kapcsolt elem melletti szerkesztő gombbal ellenőrizheted.
Meglévő kapcsolatok cseréje
Szekció neve “Meglévő kapcsolatok cseréje”Ha az összes meglévő gyermeket újra akarod cserélni, a store_items_type értéke replace:
"store_items_type": "replace"Szülő hozzáadása a gyermekhez
Szekció neve “Szülő hozzáadása a gyermekhez”A context értéke parent:
{ "parent_id": 3, "child_id": 710, "context": "parent", "store_items_type": "update", "meta": {"tour_start_date": "2024-08-13", "_price_": "400"}}A 3-as azonosítójú szülő a 710-es gyermekhez kerül.
Több elem egyszerre
Szekció neve “Több elem egyszerre”A child_id (vagy a parent_id) értéke tömb is lehet:
"child_id": [710, 1174, 653, 1221, 649]Több szülőt is megadhatsz egy gyermekhez, és szülők és gyermekek tömbje együtt is használható: ilyenkor minden szülőhöz az összes megadott gyermek kapcsolódik.
Leválasztás
Szekció neve “Leválasztás”{ "parent_id": 2, "child_id": 1310, "context": "child", "store_items_type": "disconnect"}Az 1310-es gyermek leválik a 2-es szülőről, új elem nem kerül a kapcsolatba.
Készült: