# Lekérdezések és tartalom: gyakorlati példák

> Bejegyzések szűrése dátummezővel, szerzői profiloldal, termékek egy kategóriából és külső API tartalmának megjelenítése.

Négy példa a **Dinamikus bejegyzések** widget és a távoli tartalmat kezelő widgetek használatára.

## Bejegyzések szűrése dátummezővel: az elmúlt egy hét

A példában egy ACF dátumválasztó mező értéke alapján listázol bejegyzéseket a **Dinamikus bejegyzések** widgetben. Két módszer van.

**1. Dátumszűrő.** A **Lekérdezési szűrő** szakaszban a **Szerint** mezőben válaszd a **Dátum** szűrőt, a **Dátumszűrő** értéke legyen **Elmúlt hetek** (az **Eltelt (napok/hónapok/évek) száma** mezőbe írj 1-et), a **Dátummező** pedig **Meta érték**. Add meg a **Meta mező**t, és a **Meta dátumformátum** mezőben a mezőben tárolt dátum formátumát.

![A dátumszűrő a Lekérdezési szűrő szakaszban](./kepek/dynamic-posts-szuro-datum.webp)

*A dátumszűrő a Lekérdezési szűrő szakaszban* (https://minta-bolt.hu/wp-admin/post.php?post=23&action=elementor)

**2. Meta kulcs szűrő.** A **Szerint** mezőben válaszd a **Meta kulcs** szűrőt, add meg a **Meta mező**t, az **Adatfeldolgozó** (operátor) legyen **nagyobb, mint**, az **Érték** mezőbe pedig dinamikus shortcode kerül, amely a mai dátumból levon egy hetet:

```text
{date:"-1 week" @ format="Ymd"}
```

A formátumnak egyeznie kell az ACF mezőben tárolt dátuméval (itt `Ymd`). Ha az operátort **kisebb, mint** értékre cseréled, éppen azok a bejegyzések tűnnek el, amelyeknek a dátuma az elmúlt egy hétbe esik. Ezt a hagyományos dátumszűrővel nem lehet megoldani.

![A meta kulcs szűrő mezői](./kepek/dynamic-posts-szuro-metakulcs.webp)

*A meta kulcs szűrő mezői* (https://minta-bolt.hu/wp-admin/post.php?post=23&action=elementor)

## Szerzői profiloldal a szerző bejegyzéseivel

A profiloldalt két lépésben készíted: sablon a profilnak, majd a sablon hozzárendelése a szerzői archívumhoz.

**1. A profilsablon.** Az Elementor **Sablonok → Új hozzáadása** menüjében válaszd a **Szakasz** típust, és nevezd el a sablont. Négy elem kerül bele, ötödikként a bejegyzések listája:

1. **Szerző neve:** egy szövegelemben használd a `[author:display_name]` tokent.
2. **Szerző bemutatkozása:** dinamikus címkének válaszd a **Szerző mező** címkét, a **Mező neve** listában pedig a bemutatkozás (Bio) mezőt.
3. **Szerző képe:** a felhasználó profilképét adó dinamikus címkével jelenítsd meg. Kör alakú maszkot a haladó maszkolás **clip-path** beállításával adhatsz neki, a kész alakzatok közül választva.
4. **A szerző bejegyzéseinek száma:** a `[user:ID|count_user_posts]` token adja vissza.
5. **A szerző bejegyzései:** húzd be a **Dinamikus bejegyzések** widgetet. A **Lekérdezési szűrő** szakaszban a **Szerint** mezőben válaszd a **Szerző** szűrőt, a típusa legyen **Aktuális szerző**.

![A szerzőszűrő beállításai](./kepek/dynamic-posts-szuro-szerzo.webp)

*A szerzőszűrő beállításai* (https://minta-bolt.hu/wp-admin/post.php?post=23&action=elementor)

**2. Hozzárendelés.** A **Dynamic Content for Elementor → Funkciók** oldal **Sablonrendszer (elavult)** fülén az **Egyéb oldalak** között rendeld a sablont a szerzői oldalhoz. Ezután minden szerző oldala a profil adatait és a saját bejegyzéseit mutatja.

## WooCommerce-termékek egy kategóriából

1. Húzd be a **Dinamikus bejegyzések** widgetet, és a **Bejegyzés típusa** mezőben válaszd a **Termékek** típust.
2. A **Lekérdezési szűrő** szakaszban a **Szerint** mezőben válaszd a **Kifejezések és osztályozások (taxonomy)** szűrőt, a típusa legyen **Kifejezés kiválasztása**.
3. Az **Osztályozások (taxonomy) kiválasztása** mezőben válaszd a **Termékkategóriák** osztályozást.
4. A felvett kifejezések mezőjében keresd ki és válaszd ki a kívánt kategóriát (kizáráshoz a kizárt kifejezések mezőjét használd).

![A kifejezésszűrő a Lekérdezési szűrő szakaszban](./kepek/dynamic-posts-szuro-kifejezesek.webp)

*A kifejezésszűrő a Lekérdezési szűrő szakaszban* (https://minta-bolt.hu/wp-admin/post.php?post=23&action=elementor)

Hasznos például céloldalon, ahol a termékhez hasonló, ugyanabba a kategóriába tartozó termékeket akarsz mutatni.

## Tartalom lekérése külső API-ból

A **Dinamikus API** widgettel bármely nyilvános JSON-API adatát megjelenítheted. A példában egy olyan API-t használsz, amely minden oldalbetöltéskor egy véletlenszerű kutyaképet ad vissza.

1. Add meg a lekérdezendő végpont **URL**-jét.
2. Az **Adatok** szakaszban kapcsold be a **Dinamikus HTML** lehetőséget: így a widget a JSON-választ dolgozza fel, és az eredményt az oldalba építi.
3. A HTML-megjelenítésbe írd azokat a `[DATA:…]` tokeneket, amelyekkel a visszakapott adatból felépíted a kimenetet (például egy kép `src` attribútumába az API által visszaadott képcímet).

![A Dinamikus API Adatok szakasza](./kepek/tovabbi-widgetek-dinamikus-api-adatok.webp)

*A Dinamikus API Adatok szakasza* (https://minta-bolt.hu/wp-admin/post.php?post=74&action=elementor)

Az oldal minden újratöltésekor új kép jelenik meg. Ugyanígy más API-k adatait is beolvashatod.

## Egyedi sablon a Dinamikus bejegyzésekhez

A **Dinamikus bejegyzések** widget a **Tételek** fülön előre elkészített tétel stílusokat kínál, amelyeket ott tovább alakíthatsz. Ha ezek egyike sem jó, saját Elementor-sablont is készíthetsz a tételekhez.

1. A widget **Tétel stílusa** beállításánál válaszd az **Elementor-sablon** lehetőséget.
2. Kattints a plusz ikonra, így új sablont hozhatsz létre.
3. A sablonban építsd fel a tételt: húzz be widgeteket a bejegyzés adataihoz, például a kiemelt képhez, a címhez, a tartalomhoz vagy a kifejezésekhez. Az adatok **dinamikus shortcode-okkal** is beszúrhatók.
4. Mentsd a sablont, majd állítsd be a tétel stílusában.

![Az Elementor-sablon stílus beállításai](./kepek/dynamic-posts-tetelek-sablon.webp)

*Az Elementor-sablon stílus beállításai* (https://minta-bolt.hu/wp-admin/post.php?post=22&action=elementor)

A képen a **Sablon** mező látszik, ahol kiválasztod az elkészült sablont.
