# Metamezők és szójegyzékek fordítása WPML-lel

> Egyedi mezők, metaboxok, szójegyzékből töltött opciók és többértékű mezők címkéinek fordítása a WPML bővítménnyel.

A WPML-lel a JetEngine metamezői és metaboxai fordíthatók, így a dinamikus adatok minden nyelvi változaton helyesen jelennek meg. Mindkét részhez aktív WPML és JetEngine kell, létrehozott metamezőkkel. A bejegyzéstípusok és taxonómiák slugjának fordítását a [Bejegyzéstípus- és taxonómia-slugok fordítása WPML-lel](https://hub.hellowp.io/hu/plugins/jet-engine/bejegyzestipusok-wpml-forditas/) fejezet írja le.

## Egyedi mezők és metaboxok fordíthatóvá tétele

1. Nyisd meg a **WPML → Beállítások** oldalt, és görgess a **Custom Fields Translation** részhez. Itt látod az összes egyedi mezőt. A lista fölötti keresővel gyorsan megtalálod a keresett mezőt.
2. Minden mező mellett rádiógombbal választod ki, hogyan viselkedjen. Alapból minden mezőnél a **Don't translate** van kijelölve.

| Lehetőség | Mit csinál |
| --- | --- |
| **Don't translate** | A mező értéke változtatás nélkül jelenik meg. |
| **Copy** | A mező értéke mindig átmásolódik a másodlagos nyelvekre, akkor is, ha az alapnyelvi mezőt később módosítod. |
| **Copy once** | Az érték az első fordításkor másolódik át. Utána a másodlagos nyelven megadhatsz más értéket, és az alapnyelvi mező nem írja felül. |
| **Translate** | A mezőt a WPML szerkesztőjében lefordíthatod, bárhol is jelenik meg. |

3. Ha minden rádiógomb a helyén van, kattints a **Mentés** gombra.

A **Show system fields** gombbal (a Custom Fields Translation szakasz címe alatt) a rendszer által használt mezők is megjelennek. Ezekkel óvatosan bánj, és a módosítás előtt mindig készíts mentést az oldal tartalmáról.

### Ha egy mező hiányzik a WPML fordítószerkesztőjéből

Integrációs okokból előfordulhat, hogy a WPML fordítószerkesztője nem veszi fel az összes egyedi mezőt. Nézd meg a másodlagos nyelvű oldalt a frontenden, és ha hiányt látsz, pótold kézzel:

1. Nyisd meg az **Oldalak → Összes oldal** listát, és a felső sáv nyelvváltójával válaszd ki az adott nyelvet.
2. Szerkeszd a kívánt oldalt vagy bejegyzést.
3. A figyelmeztetésnél kattints az **Edit anyway** gombra.
4. Add meg kézzel a hiányzó fordításokat, majd kattints a **Frissítés** gombra.

A metamezőknél a **Címkén** kívül ne módosíts más mezőtulajdonságot, mert az oldal hibásan működhet.

## Szójegyzékből töltött és többopciós mezők fordítása

A **Jelölőnégyzet**, a **Kiválasztás** és a **Választógomb** mező opcióit szójegyzékhez kötheted. A mezők címkéi és az opciók címkéi a WPML **String Translation** oldalán fordíthatók.

1. Ha még nincs szójegyzéked, hozd létre a **JetEngine → JetEngine vezérlőpult → Szójegyzékek** oldalon (lásd [Szójegyzékek](https://hub.hellowp.io/hu/plugins/jet-engine/meta-mezok-szojegyzekek/)), vedd fel az elemeket, és mentsd.
2. Nyisd meg a mező szerkesztőjét, például egy bejegyzéstípus vagy metabox oldalát.
3. A mező beállításainál győződj meg róla, hogy a szójegyzékes forrás be van állítva, és a szójegyzék ki van választva.
4. Kapcsold be a **Mentés tömbként** beállítást is.
5. Nyisd meg a **WPML → String Translation** oldalt, és keresd meg a mező címkéjét. Kereshetsz kézzel vagy a lista fölötti kereső mezővel.
6. A **+** gombbal add meg a mező címkéjének fordítását.
7. Ugyanígy add meg az opciók címkéinek fordítását is.

Csak a **címkéket** fordítsd le, az **értékeket** soha: az értékek az adatbázisban tárolt azonosítók, a fordításuk elrontaná a mező működését.

Ezután a mező és az opciói az eredeti és a lefordított nyelven is helyesen jelennek meg.

## JetSmartFilters szűrő fordítása szójegyzék alapján

Ha egy JetSmartFilters szűrő a JetEngine szójegyzékéből tölti az opcióit, a szűrő a nyelvi változatokon is működtethető. Szükséges: aktív WPML, JetEngine és JetSmartFilters.

1. **Szójegyzék:** a **JetEngine → JetEngine → Szójegyzékek** fülön kattints az **Új szójegyzék** gombra. Add meg a nevet, és az adatforrást (**Elemek kézi megadása** vagy **Elemek betöltése feltöltött fájlból**). Az **Új mező** gombbal vedd fel az elemeket: az **Érték** egyedi, csak latin kisbetűt, számot, kötőjelet és aláhúzást tartalmazhat, szóköz nélkül; a **Címke** a megjelenített név; az **Be van jelölve** kapcsoló az alapértelmezett kijelölést adja. Mentsd.
2. **Metamező:** a **JetEngine → Bejegyzéstípusok** (vagy más forrásnál a **Metaboxok**) oldalon vegyél fel új metamezőt. A típus **Jelölőnégyzet**, a forrás **Szójegyzék**, és válaszd ki az előbbi szójegyzéket. Frissítsd a bejegyzéstípust, majd töltsd ki a mezőt a bejegyzéseknél.
3. **Fordíthatóság:** a **WPML → Beállítások** oldalon a **Bejegyzéstípusok fordítása** részben állítsd **Fordítható** értékre a bejegyzéstípust (és azt a forrást, amelyhez a mező tartozik), és mentsd. Az **Egyedi mezők** résznél keresd meg a jelölőnégyzet mezőt, állítsd **Másolás** állapotra, és mentsd.
4. **Címkék fordítása:** a **WPML → String Translation** oldalon keresd meg a szójegyzék mezőinek címkéit, és a **+** gombbal add meg a fordításukat. Csak a **címkéket** fordítsd, az **értékeket** hagyd eredetiben.
5. **Szűrő:** a **Smart Filters → Új hozzáadása** oldalon adj nevet a szűrőnek, a típusa **Jelölőnégyzet lista**, az adatforrás **JetEngine szójegyzék**, és válaszd ki a szójegyzéket. Kapcsold be a **JetEngine jelölőnégyzet metamező** kapcsolót, a **Lekérdezési változó** mezőbe pedig írd be a jelölőnégyzet metamező nevét/azonosítóját. Töltsd ki a címkéket, és frissítsd a szűrőt.
6. **Oldal:** a szerkesztőben (blokkszerkesztő, Elementor vagy Bricks) tedd az oldalra a nyelvváltót, a **Jelölőnégyzet szűrő** widgetet (válaszd ki a szűrőt és a szolgáltatót a **Ez a szűrő ehhez** mezőben), és a szolgáltatót, például egy **Listing Grid** elemet a listázási sablonnal. Tedd közzé.
7. **Oldal fordítása:** az oldallistában a **+** gombbal fordítsd le az oldalt, és fordítsd le a bejegyzéstípus elemeit is.

A weboldalon a nyelvváltóval átváltva a tartalom lefordítva jelenik meg, és a szűrő opcióit kijelölve a lista a kiválasztott értékek szerint szűrődik.

## Beállítási oldalak mezőinek fordítása

A beállítási oldalak (opciós oldalak) metamezőinek címkéi is fordíthatók, így a globális beállítások minden nyelvi változaton megfelelően jelennek meg. Szükséges: aktív WPML és JetEngine, létrehozott beállítási oldallal és mezőkkel.

1. Nyisd meg a **WPML → String Translation** oldalt.
2. A kereső mezőbe írd be a mező nevét (a nevét, nem a slugot), és indítsd a keresést.
3. A **+** gombbal add meg a fordítást, és nyomj **Entert**.

A mező értékének fordításához jelöld meg a mezőt fordíthatónak a `wpml-config.xml` fájlban vagy a **WPML → Beállítások** oldalon. Ez nem mindig ajánlott: ha az értéket feltételekben vagy logikai szabályokban használod, a lefordított érték elronthatja azokat.
