Foglalások megjelenítése dinamikus naptárban
A JetFormBuilderrel felvett foglalások kiírása a JetEngine Dynamic Calendar elemével: JetBooking lekérdezés, listázási sablon és naptár.
A JetEngine Dynamic Calendar elemével a korábban felvett foglalásokat naptárban jelenítheted meg a frontenden. Az elem egyszerű módban működik, a WooCommerce-szal és anélkül is. Szükséges bővítmények: JetEngine (egy bejegyzéstípussal, bejegyzésekkel, és bekapcsolt Calendar modullal), JetBooking, JetThemeCore és JetFormBuilder, elkészített foglalási űrlappal. Az oldalakat Elementorral vagy a blokkszerkesztővel építheted.
1. A JetBooking beállítása
Szekció neve “1. A JetBooking beállítása”- A Foglalások → Beállítások → Általános fülön a Foglalási mód legyen az egyszerű mód, a Foglalási példányok bejegyzéstípusa pedig az a típus, amelynek a foglalásait mutatni szeretnéd (például „Ingatlanok”).
- Az Ütemezés fülön állítsd be a hét napjaira és az időre vonatkozó szabályokat (Időválasztó a be- és kijelentkezéshez).
2. JetEngine lekérdezés
Szekció neve “2. JetEngine lekérdezés”- A JetEngine → Query Builder oldalon kattints az Add New gombra.
- A Name mezőbe írd a lekérdezés nevét (például „Foglalások lekérdezése”), a Query Type listából válaszd a „JetBooking Query” lehetőséget.
- A General fülön a Status listából válaszd ki a mutatni kívánt foglalási állapotot (például „On hold”, „Pending”).
- A User ID mezőnél kattints a Dynamic Tag ikonra, és válaszd a „Current user ID” makrót.
- Mentsd az Add Query / Update Query gombbal.
3. A foglalási űrlap
Szekció neve “3. A foglalási űrlap”Készíts űrlapot, vagy nyisd meg a meglévőt (Foglalási űrlap).
- Vedd fel az adatgyűjtő mezőket (például keresztnév, vezetéknév, e-mail).
- Vegyél fel egy Check-in/check-out dates mezőt: a Field label mezőben a felirata, a Fields position legyen „Inline”, a Layout pedig „Separate fields for check in and check out dates”. Állítsd be a dátumformátumot, az elválasztót és a hét első napját.
- Az űrlap utólagos műveleteinél vedd fel az Apartment Booking műveletet: az Apartment ID Field mezőben válaszd a rejtett mezőt (például
property_id), a Check-in/Check-out Date Field és az E-mail Field mezőben a megfelelő mezőket. A DB columns map résznél rendeld az űrlap mezőit az adatbázisoszlopokhoz (például az e-mail mezőt a user_data oszlophoz). - Mentsd az űrlapot (Update), és tedd a bejegyzéstípus egyedi oldalára a JetForm elemmel (Foglalási naptár, dátumválasztó és az űrlap a tétel oldalán).
- A frontenden küldd el az űrlapot. A foglalás a Foglalások → Foglalások oldalon jelenik meg.
4. Listázási sablon (Listing item)
Szekció neve “4. Listázási sablon (Listing item)”- A JetEngine → Listings/Components oldalon kattints az Add New Item gombra.
- A Listing source listából válaszd a „Query Builder” lehetőséget, a Query listából az elkészített lekérdezést. Add meg a sablon nevét, és a Listing view listából válaszd ki a szerkesztőt. A Create Listing Item gombbal hozd létre.
- Húzz a sablonra Dynamic Field elemeket. Az első elem Source értéke „Post/Term/User/Object Data”, az Object Field a JetBooking csoportban a „Booking ID”.
- Ismételd meg az elemet a „Check In Date” mezőre. A dátum formázásához kapcsold be a Filter field output kapcsolót, a Callback legyen „Format date”, a formátum például „F j, Y” (hónap, nap, év).
- A „Check In Time” mezőre ugyanígy, a Format mezőben például „g:i,a” szöveggel.
- A „Check Out Date” és a „Check Out Time” mezőt ugyanígy vedd fel.
- Ha a foglalást a Google Naptárba is fel szeretnéd venni, tegyél a sablonra Dynamic Link elemet, és a Source listából válaszd a „JetBooking: Add booking to Google Calendar” lehetőséget.
- A Publish gombbal mentsd.
5. A Dynamic Calendar elem
Szekció neve “5. A Dynamic Calendar elem”- Hozz létre új egyedi oldalt, vagy nyisd meg azt, amelyet a lekérdezéshez használtál.
- Húzd az oldalra a Dynamic Calendar elemet.
- A Listing listában válaszd ki az elkészített listázási sablont, a Group posts by mezőnél pedig a „Booking date” lehetőséget.
- Frissítsd az oldalt, és nézd meg a frontenden: a naptárban a foglalások a napokhoz rendezve látszanak.
- Az „Add to Google Calendar” hivatkozásra kattintva a foglalás felkerül a Google Naptárba.
Készült: