# Kapcsolatok áttekintése

> A JetEngine kapcsolatainak beállításai: általános beállítások, CCT-mezők, feliratok, metamezők, admin oszlop és admin szűrő.

A **Kapcsolatok** modul összeköt két objektumot: bejegyzéstípusok bejegyzéseit, egyedi tartalomtípusok (CCT) elemeit, taxonómiák kifejezéseit vagy felhasználókat. A kapcsolat egyik oldala a szülő, a másik a gyermek. Az összekapcsolt elemeket a szerkesztőoldalakon kezelheted, a weboldalon pedig lekérdezéssel, dinamikus mezővel vagy listázással jeleníthetők meg.

Új kapcsolatot a **JetEngine → Kapcsolatok** oldalon, az **Új hozzáadása** gombbal vehetsz fel. A meglévőket a lista **Szerkesztés** hivatkozásával nyitod meg, a **Másolás** és a **Törlés** ugyanitt van.

![A Kapcsolatok listája egy felvett kapcsolattal](./kepek/kapcsolatok-lista.webp)

*A Kapcsolatok listája egy felvett kapcsolattal* (https://minta-bolt.hu/wp-admin/admin.php?page=jet-engine-relations)

A listában az azonosító, a név, a kapcsolódó objektumok és a kapcsolat típusa látszik. Az azonosítóra később szükséged lehet (például SQL-lekérdezésnél vagy a REST API-nál).

## Általános beállítások

![A kapcsolat szerkesztőoldala az általános beállításokkal](./kepek/kapcsolatok-szerkeszto.webp)

*A kapcsolat szerkesztőoldala az általános beállításokkal* (https://minta-bolt.hu/wp-admin/admin.php?page=jet-engine-relations&cpt_relation_action=edit&id=3)

A képen az **Általános beállítások** panel látszik, jobb oldalt a **Kapcsolat frissítése** gombbal.

| Beállítás | Mit csinál |
| --- | --- |
| **Név** | A kapcsolat neve. Ez jelenik meg később a makrók és a dinamikus címkék beállításaiban. |
| **Szülő objektum** | A kapcsolat fő objektuma: bejegyzéstípus, osztályozás (taxonómia), felhasználó vagy CCT. |
| **Gyermek objektum** | A kapcsolat gyermekobjektuma, ugyanezekből a típusokból. A szülő és a gyermek nem lehet ugyanaz. |
| **Kapcsolat típusa** | **Egy az egyhez**, **Egy a többhöz** vagy **Több a többhöz**. A típusok leírása a [Kapcsolat létrehozása bejegyzések között](https://hub.hellowp.io/hu/plugins/jet-engine/kapcsolatok-bejegyzesek-kozott/) fejezetben van. |
| **Szülőkapcsolat** | Nagyszülő-unoka szerkezethez: egy másik kapcsolat, amelynek a gyermekobjektuma megegyezik ennek a kapcsolatnak a szülő objektumával. Lásd: [Nagyszülő és unoka kapcsolatok](https://hub.hellowp.io/hu/plugins/jet-engine/kapcsolatok-nagyszulo-unoka/). |
| **Vezérlők regisztrálása a szülőobjektumhoz** | A szülő szerkesztőoldalán megjelenik a kapcsolódó gyermekeket kezelő doboz (bejegyzésnél, felhasználónál, kifejezésnél is). |
| **Legalább egy gyermek szükséges** | Ha be van kapcsolva, a szülő nem tehető közzé gyermek nélkül. A szerkesztőben a „Should have at least one related child.” hibaüzenet látszik; a szövege a **Feliratok** között módosítható. |
| **Új gyermekek létrehozásának engedélyezése a szülőobjektumból** | A szülő oldaláról új gyermektételt is létrehozhatsz. |
| **Gyermekek törlésének engedélyezése a szülőobjektum oldaláról** | A szülő oldaláról törölhetők a gyermektételek. |
| **Vezérlők regisztrálása a gyermekobjektumhoz** | A gyermek szerkesztőoldalán megjelenik a kapcsolódó szülőket kezelő doboz. |
| **Legalább egy szülő szükséges** | Ugyanez a gyermek oldalán: szülő nélkül nem tehető közzé. |
| **Új szülők létrehozásának engedélyezése a gyermekobjektumból** | A gyermek oldaláról új szülőtétel hozható létre. |
| **Szülők törlésének engedélyezése a gyermekobjektum oldaláról** | A gyermek oldaláról törölhetők a szülőtételek. |
| **Külön DB-tábla regisztrálása** | A kapcsolat saját adatbázistáblát kap. Ha kikapcsolod, minden kapcsolat a közös táblában tárolódik. Sok tételnél a külön tábla gyorsíthat. |
| **Tétel/tételek lekérdezésére szolgáló REST API-végpont regisztrálása** | Olvasó REST-végpontokat ad a kapcsolathoz. Lásd: [Kapcsolatok kezelése REST API-val](https://hub.hellowp.io/hu/plugins/jet-engine/kapcsolatok-rest-api/). |
| **Frissítést végző REST API-végpont regisztrálása** | Írásra szolgáló végpontot ad a kapcsolódó elemek frissítéséhez. |

A kapcsolatot a **Kapcsolat frissítése** gombbal mented. Új kapcsolatnál a gomb felirata a hozzáadást jelzi.

## CCT-hez tartozó beállítások

Ha a szülő vagy a gyermek objektum egyedi tartalomtípus (CCT), az általános beállítások alatt megjelenik egy külön blokk:

- **Címmező**: a CCT azon mezője, amelyből az összekapcsolt tétel címe származik.
- **Létrehozáshoz használt mezők**: azok a CCT-mezők, amelyeket ki lehet tölteni, amikor a szülő oldaláról új gyermek CCT-tételt (vagy a gyermek oldaláról új szülőt) hozol létre.

## Feliratok

A **Feliratok** panelen átírhatod a kapcsolatkezelő dobozok szövegeit. A szülő és a gyermek oldalához külön-külön tartozik felirat: a doboz címe, a hibaüzenet (ha nincs gyermek vagy szülő), a kapcsolódó tétel hozzáadásának gombja, a tétel kiválasztó mezőjének felirata és az új tétel létrehozásának gombja. Egyes feliratok csak akkor látszanak, ha a hozzájuk tartozó kapcsolót bekapcsoltad. Ha üresen hagyod, az alapértelmezett felirat jelenik meg.

## Meta mezők

A kapcsolat saját metamezőket is kaphat: ezek magáról a kapcsolatról (a két tétel viszonyáról) tárolnak adatot. Az **Új mező** gombbal vehetsz fel újat. A beállításai:

- **Címke**: a mező neve.
- **Név/ID**: a címkéből automatikusan képződik, csak latin betűket, számokat, kötőjelet és aláhúzást tartalmazhat. Ha már létezik ilyen név, a rendszer számot fűz hozzá.
- **Mező típusa**: szöveg, dátum, idő, dátum és idő, szövegdoboz, jelölőnégyzet, média, rádiógomb, választó és szám.
- **Leírás**: a mező célját magyarázó szöveg.
- **Kötelező**: be van kapcsolva, ha a mezőt ki kell tölteni.

Példák: egy edzőterem oldalán a felhasználó (edző) és az edzés között egy „idő” mező; egy filmes oldalon a színész és a film között a szerep neve; egy projektkövető oldalon a dolgozó és a szerepkör között a felelősség leírása.

A kapcsolat metamezői a szerkesztőoldali kapcsolatkezelő táblában is szerkeszthetők, és a lekérdezésekben, szűrőkben felhasználhatók: lásd [Szűrés kapcsolat metamezője alapján](https://hub.hellowp.io/hu/plugins/jet-engine/kapcsolatok-szures-meta/).

## Admin oszlop a kapcsolódó elemekkel

A bejegyzéstípus listájában külön oszlopban mutathatók a kapcsolódó elemek.

1. Menj a **JetEngine → Bejegyzéstípusok** oldalra, és nyisd meg a kívánt típust.
2. Az **Admin oszlopok** részben kattints az **Új hozzáadása** gombra.
3. Add meg a címet, a típusnál válaszd az **Egyéni visszahívás** lehetőséget, és kattints a visszahívás mezőjében a meglévő visszahívások kiválasztására.
4. A listából válaszd a `jet_engine_custom_cb_related_items` visszahívást.
5. A következő ablakban válaszd ki a kapcsolatot, és kattints az **Alkalmaz** gombra.
6. Frissítsd a bejegyzéstípust.

Ezután a bejegyzéstípus listájában a kapcsolódó elemek külön oszlopban látszanak.

## Admin szűrő kapcsolódó elemek szerint

A bejegyzéslista kapcsolódó elemek szerint is szűrhető.

1. A **JetEngine → Bejegyzéstípusok** oldalon nyisd meg a bejegyzéstípust.
2. Az **Admin szűrők** részben kattints az **Új hozzáadása** gombra.
3. Add meg a nevet vagy a helyőrzőt, a típusnál válaszd a **Szűrés kapcsolódó elemek szerint** lehetőséget, és jelöld ki a kapcsolatot.
4. Frissítsd a bejegyzéstípust.

A bejegyzéslista fölött ezután megjelenik a szűrő.

## Kapcsolódó fejezetek

- [Kapcsolat létrehozása bejegyzések között](https://hub.hellowp.io/hu/plugins/jet-engine/kapcsolatok-bejegyzesek-kozott/)
- [Egyedi sorrend a kapcsolódó elemeknek](https://hub.hellowp.io/hu/plugins/jet-engine/kapcsolatok-egyedi-sorrend/)
- [Kapcsolódó elemek szűrése](https://hub.hellowp.io/hu/plugins/jet-engine/kapcsolatok-szures/)
