Tovább a tartalomhoz

Beágyazott ismétlőhöz hasonló szerkezet kapcsolatokkal

Háromszintű kapcsolatlánc (felhasználó, szerep, projekt) és beágyazott listázás a beágyazott ismétlő helyett.

Ha a beágyazott ismétlő mező nem elég, vagy nem használható, ugyanazt a szerkezetet a Kapcsolatok funkcióval is felépítheted. A kapcsolat bejegyzések, CCT-elemek, taxonómiatagok és felhasználók között is létrehozható, és három szintű (nagyszülő, szülő, gyerek) lánc is kialakítható. A kapcsolt elemeket beágyazott listázással jeleníted meg az oldalon.

A példában egy cég munkatársainak több szerepe van, és minden szerephez több projekt tartozik. Beágyazott ismétlővel ez egy külső ismétlő (szerepek) és egy belső ismétlő (projektek) lenne. Itt helyette ez a lánc készül:

Felhasználók → Csapatszerepek → Csapatprojektek

A Csapatszerepek bejegyzéstípus a külső, a Csapatprojektek a belső „ismétlő”.

Szükséges: Elementor (ingyenes), blokkszerkesztő vagy Bricks, és az aktív JetEngine.

https://minta-bolt.hu/wp-admin/admin.php?page=jet-engine-relations
A Kapcsolatok listája a JetEngine menüben

A kép a JetEngine → Kapcsolatok oldalt mutatja: itt hozod létre a két kapcsolatot.

  1. Menj a JetEngine → Bejegyzéstípusok oldalra, és kattints az Új hozzáadása gombra.
  2. Add meg a nevet (például „Csapatszerepek”). A slug magától kitöltődik. Ha kell, vegyél fel metamezőket.
  3. Mentsd a bejegyzéstípust.
  4. Ismételd meg a „Csapatprojektek” típussal. Mezőnek vedd fel például a Projektképek nevű Galéria típusú mezőt, és a Projekt állapota mezőt a „Nincs elkezdve”, „Folyamatban”, „Szünetel” és „Befejezett” opciókkal.

2. Nagyszülő és szülő közötti kapcsolat

Szekció neve “2. Nagyszülő és szülő közötti kapcsolat”
  1. Nyisd meg a JetEngine → Kapcsolatok oldalt, és kattints az Új hozzáadása gombra.
  2. Add meg a nevet: „Felhasználók > Csapatszerepek”.
  3. Szülő objektumnak válaszd a Felhasználók, gyerek objektumnak a „Csapatszerepek” bejegyzéstípust.
  4. A kapcsolat típusa legyen Sok a sokhoz.
  5. Kapcsold be a gyerekek létrehozását és törlését a szülő szerkesztőjéből lehetővé tevő két kapcsolót, hogy a felhasználó szerkesztőoldaláról is felvehesd a szerepeket.
  6. Görgess lejjebb, és vedd fel a kapcsolat metamezőit, például „Felhasználói feladatok” és „Szakértelem szintje”.
  7. Mentsd a kapcsolatot.

3. Szülő és gyerek közötti kapcsolat

Szekció neve “3. Szülő és gyerek közötti kapcsolat”
  1. Hozz létre egy újabb kapcsolatot „Csapatszerepek > Csapatprojektek” névvel.
  2. Szülő objektum a „Csapatszerepek”, gyerek objektum a „Csapatprojektek”, a típus Sok a sokhoz.
  3. Szülő kapcsolatnak add meg az előbb létrehozott „Felhasználók > Csapatszerepek” kapcsolatot. Ettől lesz belőle háromszintű lánc.
  4. Kapcsold be a gyerekek létrehozását és törlését mindkét irányból.
  5. A kapcsolat metamezői lehetnek például: Kezdő dátum és Záró dátum (Dátum típus), valamint Kiosztott feladatok, Projekt haladási jegyzetei és Visszajelzés (Szövegterület típus).
  6. Mentsd a kapcsolatot.
  1. Nyisd meg egy felhasználó szerkesztőoldalát, és a lap alján a gyerek szerepek blokkban kattints az új elem felvételére. Írd be a címet (például „Frontend fejlesztő”), mentsd, majd a felugró ablakban töltsd ki a kapcsolat metamezőit, és mentsd az adatokat.
  2. Vedd fel ugyanígy a második szerepet („UX tervező”). A szerepek bejegyzésként is létrejönnek a Csapatszerepek listában.
  3. Nyisd meg egy szerepet. A Szülő felhasználó részben a felhasználó már hozzá van kapcsolva. A Gyerek csapatprojektek részben vegyél fel projekteket (cím és egyedi mezők), például „Webáruház” vagy „Mobilbanki alkalmazás”.
  4. Ugyanígy töltsd ki a többi szerepet is.

Két lekérdezés kell: egy a projektekhez (a szerepek gyerekei), egy a szerepekhez (a felhasználók gyerekei).

https://minta-bolt.hu/wp-admin/admin.php?page=jet-engine-query
A Lekérdezéskészítő lekérdezéseinek listája

A kép a JetEngine → Lekérdezéskészítő oldalt mutatja, ahol a két lekérdezés elkészül.

  1. Menj a JetEngine → Lekérdezéskészítő oldalra, és kattints az Új hozzáadása gombra.
  2. Add meg a nevet („Projektek a szerepekhez”). A lekérdezés típusa maradjon a Bejegyzések lekérdezése.
  3. Az általános részben válaszd ki a gyerek bejegyzéstípust („Csapatprojektek”).
  4. A Bejegyzés és oldal részben kattints az adatbázis ikonra a Post In mező mellett, és válaszd a Kapcsolódó elemek makrót.
  5. A From Relation mezőben válaszd a „Csapatszerepek > Csapatprojektek” kapcsolatot, a From Object mezőben a Child Object értéket, az Initial Object ID From mezőben a Current Object ID értéket. Kattints az Alkalmaz gombra.
  6. Mentsd a lekérdezést.
  7. Hozd létre a második lekérdezést („Szerepek a felhasználókhoz”) ugyanígy: gyerek bejegyzéstípus a „Csapatszerepek”, kapcsolat a „Felhasználók > Csapatszerepek”, a többi beállítás ugyanaz.
  1. Menj a JetEngine → Listázások/komponensek oldalra, és vegyél fel új elemet.
  2. A Listázás forrása legyen a Lekérdezéskészítő, válaszd ki az első lekérdezést („Projektek a szerepekhez”), add meg a nevet („Projektek listázása”), és válaszd a megjelenítési módot (Blokkok, Bricks, Timber/Twig vagy Elementor).
  3. Hozd létre a listázási elemet.
  4. A bejegyzés adatait (cím, egyedi mezők) a dinamikus widgetekkel jelenítsd meg, ahogy szoktad.
  5. A kapcsolat metaadatainak megjelenítéséhez tegyél be egy Dynamic Field elemet, a Forrás legyen Kapcsolat metaadatai, a Metamező listából válaszd a „Csapatszerepek > Csapatprojektek” kapcsolat mezőjét.
  6. A Kontextus listában válaszd a Kapcsolódó elemek innen: … értéket a kapcsolat nevével.
  7. Hasznos beállítások: Elrejtés, ha az érték üres; A mező kimenetének szűrése a Dátum formázása visszahívással a dátummezőhöz, szöveges mezőnél a Szöveg vágása karakterek vagy szavak szerint visszahívással. Az utóbbi akkor érhető el, ha a JetEngine → JetEngine → Modulok → Külső modulok lapon bekapcsoltad a szövegvágás visszahívást.
  8. Tedd közzé a listázást. Az előnézet addig nem teljes, amíg az összes lépést el nem végezted.
  1. Vegyél fel új listázást a Listázások/komponensek oldalon, forrásnak a Lekérdezéskészítő, lekérdezésnek a második („Szerepek a felhasználókhoz”), névnek „Szerepek listázása”.
  2. A szerep adatait és a kapcsolat metamezőit itt is dinamikus mezőkkel jelenítsd meg.
  3. Húzd be a Listing Grid elemet, és válaszd ki benne az előző, „Projektek listázása” listázást. Ettől lesz beágyazott a listázás. Ebben a szerkesztőben az előnézet nem érhető el.
  4. Mentsd a változtatásokat.

A Listing Grid elemet a nagyszülő objektum, jelen esetben a felhasználó egyedi oldalán helyezed el. A példában a Profilkészítő felhasználói profiloldalának adatokat megjelenítő aloldal-sablonjába kerül: nyisd meg a sablont a szerkesztőben, tedd be a Listing Grid elemet, válaszd ki a „Szerepek listázása” listázást, és mentsd.

A weboldalon nyisd meg a felhasználó profiloldalát: a szerepek és a hozzájuk tartozó projektek a beágyazott listázásban, csoportosítva jelennek meg.

Készült:

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások