# Mentés

> Az űrlap beküldött adatainak mentése bejegyzésként, felhasználóként, kifejezésként vagy beállításként.

A **Mentés** művelettel az űrlap adataiból az adatbázisban új elem jöhet létre, vagy egy meglévő frissülhet. A **Küldés utáni műveletek** között add hozzá, és megjelenik a **Mentés** szekció.

![A Mentés szekció beállításai](./kepek/elementor-pro-form-mentes.webp)

*A Mentés szekció beállításai* (https://minta-bolt.hu/wp-admin/post.php?post=62&action=elementor)

## Mire jó

Az űrlappal fogadhatsz új bejegyzést bármely bejegyzéstípusban, új felhasználót, új kifejezést (taxonómiaelemet) és beállításokat. A beküldők frissíthetik is a meglévő elemeket: az aktuális oldalét vagy egy megadott azonosítójúét.

## Közös beállítások

A **Mezők mentése másként** választóval döntöd el a mentés típusát: bejegyzés, felhasználó, kifejezés vagy beállítás (a képen a négy ikon).

| Beállítás | Mit csinál |
|---|---|
| **Üres mezők kihagyása** | Az üres mezőket nem menti, így az adatbázis metatáblája nem telik meg fölösleges sorokkal. |
| **Fájlok mentése médiaként** | A fájlfeltöltő mezők fájljai a Médiatárba kerülnek, és az URL helyett az azonosítójuk mentődik. |
| **Több érték mentése tömbként** | A többszörös értékeket (jelölőnégyzet, többes választó, fájlfeltöltés) tömbként menti. |
| **Átirányítás ide** | Mentés után az új objektum oldalára viszi a látogatót (beállításnál nem elérhető). |
| **Anonim adatok** | Nem menti a beküldő adatait, például az IP-címet és a felhasználónevet. |
| **Létező adatok frissítése** | A meglévő objektumot (bejegyzés, felhasználó, kifejezés, beállítás) frissíti új létrehozása helyett. Az űrlapot bárki beküldheti, a be nem jelentkezett látogatók is, és a felsorolt mezőket frissíthetik. |
| **Mentendő űrlapmezők** | A mentendő mezők egyedi azonosítói vesszővel elválasztva, például `nev,uzenet`. Minden azonosító metakulcsként (beállításnál opciónévként) mentődik. Egyes azonosítók WordPress-mezőknek felelnek meg, például `post_title`, `post_content`, `first_name`. Csak a felsorolt mezők mentődnek: üres lista esetén egy űrlapmező sem, és egy új vagy átnevezett mező csak az azonosítója felvétele után. |
| **Új mezők javaslata mentéskor** | Ha egy adminisztrátor menti az oldalt, a listán nem szereplő űrlapmezők felsorolódnak, és bejelöléssel felvehetők a listára. A dinamikus azonosítójú mezőket nem javasolja. |
| **Nem javasolt mezők** | Azoknak a mezőknek az azonosítói, amelyeket nem javasol többé. A bejelöletlenül hagyott mezők ide kerülnek automatikusan. Töröld az azonosítót, ha újra javaslatot akarsz, vagy vedd fel a **Mentendő űrlapmezők** közé. |

A szöveges beállításokban használhatsz Dynamic Shortcodes-t, például `{form:mezo-id}` vagy `{date:now @format=Y}`.

## Mentés bejegyzésként

További beállítások:

- **Létező adatok frissítése** esetén megadhatod a bejegyzés azonosítóját, vagy kiválaszthatod a listából. Ha üresen hagyod, az aktuális bejegyzést frissíti.
- **Taxonómiamezők:** az a mező, amelynek azonosítója a bejegyzéstípus egy taxonómiájának neve (például `category`, `post_tag`), a beküldött kifejezéseket hozzárendeli a bejegyzéshez. A kifejezések megadhatók azonosítóval, szlöggel vagy névvel.
- **Új kifejezések létrehozása:** a még nem létező kifejezéseket is létrehozza, a be nem jelentkezett látogatók beküldésénél is. Kapcsold ki, ha csak meglévőket akarsz hozzárendelni.
- **Kiemelt kép:** a `_thumbnail_id` azonosítójú feltöltőmező, ha szerepel a **Mentendő űrlapmezők** között, beállítja a bejegyzés kiemelt képét. Kapcsold be mellé a **Fájlok mentése médiaként** beállítást.

Új bejegyzéshez jó szabályok:

- **Bejegyzés címe:** a listában való felismeréshez elengedhetetlen;
- **Bejegyzés tartalma:** opcionális, lehet üres;
- **Bejegyzés típusa:** bármelyik elérhető típus;
- **Kifejezés:** opcionálisan egy adott kifejezést hozzárendelhetsz az új bejegyzéshez;
- **Bejegyzés állapota:** közzétett vagy piszkozat;
- **Aktuális bejegyzés szülőként:** hasznos, ha az adott bejegyzésből létrejött összes bejegyzést vissza akarod keresni.

## Mentés felhasználóként

Új felhasználót hozhatsz létre, vagy meglévőt frissíthetsz:

- **Létező adatok frissítése:** kiválaszthatsz egy felhasználót a listából. Ha üres, a bejelentkezett felhasználót frissíti.
- **Automatikus bejelentkezés:** új felhasználó létrehozásakor a regisztráló látogató automatikusan bejelentkezik. A bejelentkezett felhasználótól függő tartalom csak a következő oldalbetöltéstől jelenik meg, ezért érdemes az űrlap után átirányítást is beállítani.

Új felhasználóhoz:

- **Felhasználónév:** opcionális, üresen automatikusan generálódik. Ha megadod, egyedinek kell lennie.
- **E-mail:** kötelező. Mentéskor ellenőrzi, hogy másik felhasználó nem használja-e már, és hibát ad.
- **Jelszó:** opcionális, üresen automatikusan generálódik.
- **Szerepkör:** az új felhasználó alapszerepköre, vagy a meglévőhöz hozzáadott vagy beállított szerepkör.

Az Elementor Pro-val együtt így megoldható a teljes felhasználó-regisztráció, bejelentkezés és -frissítés.

Új felhasználót az űrlap csak akkor tud létrehozni, ha a **Beállítások → Általános** oldalon a **Tagság** beállítás **Bárki regisztrálhat**.

## Mentés kifejezésként

Új kifejezést hozhatsz létre vagy meglévőt frissíthetsz:

- **Létező adatok frissítése:** kiválaszthatsz egy kifejezést a listából. Ha üres, és az űrlap egy kifejezés oldalán van, azt frissíti.
- **Név:** a kifejezés neve;
- **Leírás:** opcionális, a kifejezés tartalma;
- **Taxonómia:** a taxonómia, amelyhez az új kifejezés tartozik.

Szülő nélküli, első szintű kifejezés jön létre.

## Mentés beállításként

A **Mentendő űrlapmezők** minden mezője opcióként mentődik, a nevét az egyedi azonosító adja. Beállítást létrehozhatsz vagy frissíthetsz. A **Létező adatok frissítése** (figyelmeztetéssel jelölt) beállítás nélkül egy már létező opció nem frissül.

## A mentett adatok megtekintése az admin felületen

A mentett bejegyzéseket, felhasználókat és kifejezéseket a megszokott WordPress admin felületen kezelheted. Az űrlapból létrejövő bejegyzésekhez érdemes külön egyedi bejegyzéstípust készíteni.

Hogy a metaadatok az admin felületen is látszódjanak, vedd fel ugyanazt a kulcsot ACF-ben vagy Pods-ban a használt bejegyzéstípushoz, felhasználóhoz vagy taxonómiához. A metakulcsnak meg kell egyeznie az űrlapmező egyedi azonosítójával és az ACF-mező nevével (vagy a Pods-név).

Ha az ACF-mező egy csoportban van, az űrlapmező azonosítója `csoportID_mezoID` alakú legyen.

## Metakulcs szűrő

Ha a metakulcsot a mezőnévtől eltérően akarod menteni, használd ezt a szűrőt:

```php
apply_filters( 'dynamicooo/form-save/meta-key', $field_name, $form_name );
```
