# Multilingual Tools: kompatibilitás tesztelése és konfiguráció generálása

> A Multilingual Tools tesztbővítmény használata téma vagy bővítmény WPML-kompatibilitásának ellenőrzéséhez, wpml-config.xml generálásához és egyedi Elementor-widgetek regisztrálásához.

A Multilingual Tools ingyenes kiegészítő bővítmény, amellyel a saját témád vagy bővítményed WPML-kompatibilitását tesztelheted. Megmutatja, mely szövegek és elemek vannak jól beállítva a fordításra és melyek nem, és nyelvi konfigurációs fájlt (`wpml-config.xml`) is tud generálni.

A bővítmény a GitHubon érhető el az OnTheGoSystems tárolójában. Tesztelőbővítmény, ezért éles vagy ügyfél-oldalon ne használd.

## Előkészületek

Telepítsd és aktiváld:

- a WPML-t,
- a Multilingual Tools bővítményt,
- azokat a bővítményeket és témákat, amelyeket tesztelni akarsz.

## A használat lépései

A bővítmény első oldala a **Multilingual Tools → Overview**. Itt látod a WPML által betöltött konfigurációs fájlokat, és azt, hogy mindegyik milyen bejegyzéstípusokat, taxonómiákat és egyedi mezőket regisztrál.

Ha elégedett vagy a konfigurációval, a lenti lépésekkel tesztelheted. Ha nem, generálj új konfigurációs fájlt a beállítások frissítéséhez.

### 1. A beégetett szövegek Gettext-hívásba csomagolása

A téma vagy bővítmény fordításához minden beégetett szöveget Gettext-hívásba kell csomagolni. Ha ezt még nem tetted meg, vagy ellenőrizni akarod, kövesd a WordPress i18n irányelveit (lásd még: [Gettext használata](https://hub.hellowp.io/hu/plugins/sitepress-multilingual-cms/fejleszto-gettext/)).

### 2. A téma vagy bővítmény beégetett szövegeinek keresése

A WPML-lel átvizsgálhatod a témát vagy bővítményt a beégetett szövegekért:

1. Nyisd meg a **WPML → Fordítások** oldalt, és kattints a **Strings** fülre.
2. Nyisd ki a **Not seeing an admin text you need?** részt, válaszd ki a témát vagy bővítményt, és vizsgáld át a szövegeket.

### 3. A tesztelendő elemek kiválasztása

1. Nyisd meg a **Multilingual Tools → Settings** oldalt.
2. Görgess le az **Add language information to post duplicate** részhez.
3. Jelöld be a tesztelni kívánt elemeket, és mentsd el.

Sztringek teszteléséhez nyisd le a **Auto generate strings translations** rész sztring-legördülőjét, válaszd ki a sztringforrásokat, és kattints a **Generate strings translations** gombra.

### 4. Tartalom elküldése fordításra

Hogy ne töltsd az idődet (vagy a pénzedet) kamutartalom fordításával, a Multilingual Tools nyelvi előtagot fűz a szövegekhez. Ehhez duplikáld a tartalmat a WPML-lel, a többit a bővítmény elvégzi:

1. Nyisd meg a **WPML → Fordítások** oldalt, és kattints a **Dashboard** fülre.
2. Jelöld ki a tesztelni kívánt tartalmat.
3. Fordítási módszernek válaszd a **Duplicate** lehetőséget, és küldd el.

### 5. A kompatibilitás megerősítése

Nyisd meg a frontenden az imént lefordított tartalmat, és válts nyelvet. Az elemek kompatibilisek, ha a szövegek nyelvi előtagot kaptak. Ha egyes szövegeken nincs előtag, azok nem kompatibilisek, és további konfigurációt igényelnek.

## Egyedi Elementor-widgetek és Gutenberg-blokkok

Ha a bővítményed Elementor-widgeteket vagy Gutenberg-blokkokat használ, a Multilingual Tools elkészíti a regisztrálásukhoz szükséges XML-kód első változatát, így nem kell nulláról megírnod. A blokkokról lásd az [Egyedi Gutenberg-blokkok fordíthatóvá tétele](https://hub.hellowp.io/hu/plugins/sitepress-multilingual-cms/fejleszto-gutenberg-blokkok/) fejezetet.

## Nyelvi konfigurációs fájl generálása

Nyisd meg a **Multilingual Tools → Configuration Generator** oldalt, és állítsd be a kívánt opciókat.

**Egyedi bejegyzéstípusok és taxonómiák**

- **Do nothing**: figyelmen kívül hagyja, nem fordítja.
- **Translatable - only show translated items**: fordítható, csak a lefordított elemek jelennek meg.
- **Translatable - use translation if available or fallback to default language**: fordítható, ha van fordítás azt használja, egyébként az alapnyelvet.

**Egyedi mezők**

- **Don't translate**: figyelmen kívül hagyja, nem fordítja.
- **Copy**: az alapnyelv értékét másolja, és szinkronban tartja (számokhoz jó).
- **Copy once**: az alapnyelv értékét csak egyszer másolja (akkor jó, ha nyelvenként különböző értékeket akarsz).
- **Translate**: lefordítja a többi nyelvre.

**Admin szövegek**

A `wp_options` táblában tárolt szövegeket regisztrálja fordításra. Például az oldal címe vagy a widgetbeállítások gyakran itt vannak. A konfigurációs fájlban regisztrálva biztosíthatod, hogy a felhasználók le tudják fordítani őket (lásd: [A wp_options táblában tárolt szövegek fordítása](https://hub.hellowp.io/hu/plugins/sitepress-multilingual-cms/fejleszto-admin-szovegek/)).

**Shortcode-ok**

A shortcode-okban lévő szövegeket és attribútumokat regisztrálja fordításra (lásd: [Egyedi shortcode-ok fordítása](https://hub.hellowp.io/hu/plugins/sitepress-multilingual-cms/fejleszto-shortcode-forditas/)).

## Egyedi Elementor-widgetek regisztrálása a Multilingual Tools-szal

Ez a rész fejlesztőknek szól, akik Elementor-témát vagy -bővítményt építenek, és WPML-kompatibilissé akarják tenni. Ha csak egy Elementorral készült oldalt akarsz lefordítani, a [Elementor fordítása](https://hub.hellowp.io/hu/plugins/sitepress-multilingual-cms/oldalepitok-elementor/) fejezetet olvasd.

A Multilingual Tools része a **WPML - Config Generator for Elementor**, amely az egyedi widgetekhez automatikusan elkészíti az XML-kód első változatát. Az innen kapott információkkal regisztrálhatod a widgetet (lásd: [Egyedi oldalépítő-widgetek regisztrálása](https://hub.hellowp.io/hu/plugins/sitepress-multilingual-cms/fejleszto-oldalepito-widgetek/)).

### Előkészületek

1. Töltsd le a Multilingual Tools bővítményt az OnTheGoSystems GitHub-oldaláról.
2. Legyen telepítve és aktív a WPML Multilingual CMS és a WPML String Translation kiegészítő.
3. Legyen már Elementorral készült tartalom az oldalon.

### Miért érdemes a Multilingual Tools-t használni?

A WPML 4.9-től automatikusan felismeri az egyedi Elementor-widgeteket, és fordíthatóvá teszi őket. Előfordulhat azonban, hogy olyan sztringeket is regisztrál, amelyeket nem akarsz fordítani. A Multilingual Tools-szal pontosan szabályozhatod, mely mezők fordíthatók.

### Hogyan működik?

Amikor Elementorral készítesz oldalt, az egész tartalom az `_elementor_data` egyedi mezőbe kerül. Miután az oldalra felteszed a regisztrálni kívánt egyedi widgeteket, a **WPML - Config Generator for Elementor** beolvassa ezt a mezőt, és az oldalon használt egyedi widgeteknek megfelelő XML-kóddá alakítja.

### XML-kód generálása

1. Hozz létre egy új oldalt, és kattints az **Edit with Elementor** gombra.
2. Add hozzá az oldalhoz a fordításra regisztrálni kívánt egyedi widgeteket.

Fontos: a widgetek hozzáadásakor tölts ki minden mezőt, és kapcsolj be minden elérhető opciót. A bővítmény a beállítatlan mezőkhöz és opciókhoz nem generál XML-kódot.

3. Tedd közzé az oldalt, és térj vissza az oldal WordPress szerkesztőképernyőjére. Nyisd meg a **Meta Boxes** panelt, és görgess a **WPML - Config Generator for Elementor** részhez. A WPML 4.9 óta az egyedi Elementor-widgeteket maga regisztrálja, ezért a szakasz tetején lévő doboz azt jelzi, hogy az oldal widgetjei már regisztrálva vannak. A szükséges XML a doboz alatti panelben van: **WPML Config XML (generated for all widgets in the page)**.

### A generált XML tesztelése

Mielőtt a kódot elérhetővé teszed a végfelhasználóknak, alaposan nézd át és teszteld. A bővítmény csak kiindulópont.

1. Másold ki az XML-kódot a **WPML Config XML (generated for all widgets in the page)** panelből.
2. Nyisd meg a **WPML → Beállítások** oldalt, és kattints a **Custom XML Configuration** fülre.
3. Illeszd be a kódot a szerkesztőbe, és kattints a **Mentés** gombra. Ellenőrizd, hogy nincs figyelmeztetés vagy érvényesítési hiba. Távolítsd el azokat a mezőket, amelyeket nem szabad fordítani vagy módosítani, például a konfigurációs mezőket és a logikai értékű mezőket. Ha ezek fordíthatók maradnak, hibákat okozhatnak a felhasználóknak.
4. Menj vissza az egyedi widgeteket tartalmazó oldal szerkesztőképernyőjére. Módosíts rajta egy keveset, például az oldal címét, és kattints a **Frissítés** gombra.
5. A **Nyelv** dobozban kattints a plusz ikonra az oldal lefordításához. Megnyílik a Haladó fordítószerkesztő, és ott látnod kell az egyedi widget regisztrált mezőit. Nézd át az automatikus fordításokat, vagy írd be a sajátodat, és kattints a **Mentés és befejezés** gombra.
6. Nézd meg a lefordított oldalt a frontenden, hogy az egyedi widget mezői helyesen jelennek-e meg.

### További vizsgálati lehetőségek

Az XML-t tartalmazó panel egy a négy közül. A többi a bővítmény hibakereső információja. Ezekkel megértheted, milyen adatokból és hogyan készül az XML. Akkor hasznos, ha az XML nem úgy működik, ahogy vártad.

| Panel | Mit mutat | Mire jó |
|---|---|---|
| **WPML Config XML (generated for all widgets in the page)** | Az oldal összes widgetjének XML-kódját, a már regisztráltakét is. | A meglévő widgetbeállítások XML-jének átnézése vagy szerkesztése. |
| **RAW value from _elementor_data (JSON)** | A bejegyzés `_elementor_data` mezőjének eredeti értékét. | Látod, milyen adatból generálja a bővítmény az XML-t. |
| **Array generated from _elementor_data** | Az `_elementor_data` mező tömbbé alakított értékét. | Hibakereséshez használható. |
| **Extracted Widgets from _elementor_data** | Mely egyedi widgeteket tudta kinyerni és használni a bővítmény. | Ha egy egyedi widget, mező vagy opció nem látszik itt, nem kerül az XML-be. Hibakereséshez hasznos. |
