# Rövidkódok és SmartCode-ok

> A rövidkódtípusok áttekintése, a szerkesztőben használható SmartCode-ok és a feltételes rövidkódok (ff_if) használata.

## A rövidkódok típusai

A Fluent Forms négyféle rövidkódot használ:

| Típus | Mire való |
| --- | --- |
| **SmartCode** | Adatot gyűjt a webhelyről, a felhasználói profilokból, a bejegyzések adataiból és a FluentCRM kapcsolattartóiból. Az űrlapszerkesztőben használod. |
| **Visszaigazolási beállítások rövidkódja** | A beküldött adatokat jeleníti meg: visszaigazoló oldalon, e-mailben, PDF-ben, kvízben, beküldési részletekben, bejegyzés adataiban és fizetési jelentésekben. |
| **Segéd-rövidkód** | Adatokat gyűjt és szűr, beküldéseket számol, fizetési állapotot ellenőriz, és az URL-paramétereket jeleníti meg a beküldés után. |
| **Feltételes rövidkód** | Visszaigazolásban, e-mail-értesítésben és PDF-ben tartalmat mutat vagy rejt a látogató választásai szerint. |

## SmartCode-ok az űrlapszerkesztőben

A SmartCode-okat az alapértelmezett értékek beállításához használod (lásd a [Dinamikus alapértelmezett érték](https://hub.hellowp.io/hu/plugins/fluentform-signature/logika-dinamikus-alapertek/) fejezetet).

### Általános kódok

| Kód | Mit ad |
| --- | --- |
| `{get.input_text}` | Az URL-paraméter szövege |
| `{wp.admin_email}` | A webhely adminisztrátorának e-mail-címe |
| `{wp.site_url}` | A webhely címe |
| `{wp.site_title}` | A webhely neve |
| `{ip}` | A látogató IP-címe |
| `{date.m/d/Y}` | A dátum hónap/nap/év formában |
| `{date.d/m/Y}` | A dátum nap/hónap/év formában |
| `{user.ID}` | A bejelentkezett felhasználó azonosítója |
| `{http_referer}` | Az előzőleg meglátogatott oldal |
| `{user.display_name}` | A felhasználó megjelenített neve |
| `{user.first_name}` | A felhasználó keresztneve |
| `{user.last_name}` | A felhasználó vezetékneve |
| `{user.user_email}` | A felhasználó e-mail-címe |
| `{user.user_login}` | A felhasználó felhasználóneve |
| `{browser.name}` | A böngésző, például Chrome |
| `{random_string.elotag}` | Véletlen szöveg a megadott előtaggal |
| `{cookie.suti_neve}` | A süti értéke |

### Beágyazott bejegyzés kódjai

| Kód | Mit ad |
| --- | --- |
| `{embed_post.ID}` | A bejegyzés vagy oldal azonosítója |
| `{embed_post.post_title}` | A bejegyzés vagy oldal címe |
| `{embed_post.permalink}` | A bejegyzés vagy oldal címe (URL) |

### FluentCRM kódok

Ezek a kódok a FluentCRM kapcsolattartóinak adatait töltik be. A csoportban az általános kódok többsége is elérhető (például `{wp.admin_email}`, `{wp.site_url}`, `{wp.site_title}`, `{ip}`, `{date.m/d/Y}`, `{http_referer}`, a `{user.…}` kódok és `{browser.name}`), ezek mellett:

| Kód | Mit ad |
| --- | --- |
| `{user.meta.META_KULCS}` | Extra felhasználói adat egy megadott metakulccsal |
| `{browser.platform}` | Az eszköz vagy operációs rendszer típusa, például Windows vagy Mac |
| `{get.GET_PARAMETER_NEVE}` | Adat az URL-ből |

## Segéd-rövidkódok

A segéd-rövidkódokkal az űrlap adatait a webhely bármelyik oldalán megjelenítheted: beküldésszámot, létrehozás dátumát, egy beküldés egy mezőjét vagy fizetési összesítőt.

### Űrlapinformáció: fluentform_info

A rövidkódhoz mindig meg kell adni az űrlap azonosítóját (`id`). Az `info` paraméter mondja meg, mit jelenítsen meg:

| `info` értéke | Mit ad |
| --- | --- |
| `submission_count` | A beküldések teljes száma |
| `created_at` | Az űrlap létrehozásának dátuma |
| `updated_at` | Az űrlap utolsó módosításának dátuma |
| `payment_total` | Fizetős űrlapnál a beérkezett összeg |

```text
[fluentform_info id="9" info="submission_count"]
```

A dátumok formátumát a `date_format` paraméterrel állíthatod, a PHP szabványos dátumformátum-jelöléseivel. Például a „l d F Y g A” formátum így néz ki: „Friday 17 April 2025, 10 AM”.

```text
[fluentform_info id="9" date_format="l d F Y g A" info="created_at"]
```

További szűrők:

| Paraméter | Értékek | Hatása |
| --- | --- | --- |
| `status` | `all` (alap), `read`, `unread` | A beküldésszámot az olvasott vagy olvasatlan beküldésekre szűri |
| `with_trashed` | `no` (alap), `yes` | A kukában lévő beküldéseket kihagyja vagy beleszámolja |
| `payment_status` | `all` (alap), `paid`, `pending`, `failed`, `refunded`, `partially-refunded`, `processed` | Fizetős űrlapnál a fizetési állapot szerint szűr |
| `currency_formatted` | `yes` | A fizetett összeget pénznemjellel formázva jeleníti meg |

Példa az olvasatlan beküldések számára:

```text
[fluentform_info id="9" status="unread"]
```

### Hátralévő helyek kijelzése

Ha az űrlapkorlátozásoknál megadtál egy legnagyobb beküldésszámot, a `substract_from` paraméterrel (a név így van írva) kiírhatod, hány hely maradt. Ha a korlát 20, és 5 beküldés érkezett, a kijelzett szám 15.

```text
[fluentform_info id="9" info="submission_count" substract_from="20"]
```

A `hide_on_zero="yes"` paraméterrel a szám eltűnik, amikor eléri a nullát:

```text
[fluentform_info id="9" info="submission_count" substract_from="20" hide_on_zero="yes"]
```

### Egy beküldés egy mezője: ff_entry

Az `ff_entry` rövidkód egyetlen beküldés egy mezőjének értékét jeleníti meg. Megadod az űrlap azonosítóját (`form_id`), a beküldését (`entry_id`, például `{submission.id}`) és a mező nevét (`field`). Az `is_html=false` paraméterrel a kimenet nem HTML-ként értelmeződik.

```text
[ff_entry form_id="1" entry_id="{submission.id}" field="url"]
```

Az adatot csak azok látják, akik a beküldéseket megtekinthetik, és maga a beküldő. Más látogatónak nem jelenik meg semmi.

### URL-paraméter kiírása: ff_get

Ha az oldal címében paramétert adsz át (például `oldalad.hu/oldal?my_param=hello`), az `ff_get` rövidkóddal kiírhatod az értékét az oldalon. A példában „hello” jelenik meg.

```text
[ff_get param="my_param"]
```

## Feltételes rövidkódok

A feltételes rövidkóddal a visszaigazoló üzenetben, az e-mail-értesítésben és a PDF-ben a látogató válaszaitól függően jeleníthetsz meg tartalmat. Ehhez a Pro bővítmény kell.

Alapforma:

```text
[ff_if]
    Ide írd, amit meg akarsz jeleníteni, ha a feltétel teljesül.
[/ff_if]
```

A rövidkódnak három paramétere van:

- **field**: melyik mezőt vizsgálja. A mező nevét kell megadni.
- **is**: a feltétel típusa.
- **to**: az érték, amellyel összehasonlít. Kisbetűvel írd, például ha a rádiógomb értéke „ABC”, akkor `to="abc"`.

Példa: egy rádiógomb mezőnél csak „igen” választása esetén jelenjen meg egy üzenet:

```text
[ff_if field="input_radio" is="equal" to="yes"]
    Örülünk, hogy tetszett a termékünk!
[/ff_if]
```

Ha a válasz „nem”, másik üzenet jelenik meg:

```text
[ff_if field="input_radio" is="equal" to="no"]
    Köszönjük, hogy használod. Dolgozunk a fejlesztésen.
[/ff_if]
```

### Feltételtípusok (is)

| Érték | Jelentés |
| --- | --- |
| `equal` | Pontosan egyezik |
| `not_equal` | Nem egyezik |
| `greater_than` | Nagyobb, mint a megadott szám |
| `less_than` | Kisebb, mint a megadott szám |
| `greater_or_equal` | Nagyobb vagy egyenlő |
| `less_or_equal` | Kisebb vagy egyenlő |
| `starts_with` | A szöveg a megadott szóval kezdődik |
| `ends_with` | A szöveg a megadott szóval végződik |
| `contains` | A szöveg tartalmazza a szót vagy kifejezést |
| `not_contains` | A szöveg nem tartalmazza a szót |

Annyi feltételes rövidkódot használhatsz egymás után, amennyi kell, például egy visszajelzés mezőre három külön üzenettel (`to="great"`, `to="okay"`, `to="bad"`).

### Egymásba ágyazott feltétel

Két feltételt egyszerre az `ff_sub_if` rövidkóddal vizsgálhatsz. Ennek is ugyanaz a három paramétere van (`field`, `is`, `to`). Példa: ha a látogató „igen”-t választott, és az értékelése nagyobb, mint 2, további szöveg jelenik meg:

```text
[ff_if field="input_radio" is="equal" to="yes"]
    Örülünk, hogy tetszett a termékünk.

    [ff_sub_if field="ratings" is="greater_than" to="2"]
        Köszönjük az értékelést is.
    [/ff_sub_if]
[/ff_if]

[ff_if field="input_radio" is="equal" to="no"]
    Köszönjük, hogy használod. Dolgozunk a fejlesztésen.
[/ff_if]
```
