A WPML adatbázistáblái
Hogyan tárolja a WPML a nyelvi, fordítási és sztringadatokat, a táblák oszlopai és a táblák optimalizálása.
A WPML a nyelvi, fordítási és sztringadatokat saját adatbázistáblákban tárolja. Ezek a WordPress táblákhoz és tartalmakhoz kapcsolódnak.
Nyelvi és fordítási tábla: icl_translations
Szekció neve “Nyelvi és fordítási tábla: icl_translations”Ez a tábla a nyelvi és fordítási információt tárolja.
- Minden fordíthatóvá állított tartalomelemnek (bejegyzés, oldal, címke, kategória, egyedi bejegyzéstípus, egyedi taxonómia) van egy sora. A hozzászólások nem fordíthatók, de van sorük, mert nyelvi információ tartozik hozzájuk.
- A sor megadja az elem nyelvét és azt a fordítási csoportot, amelyhez tartozik.
- Az ugyanabba a fordítási csoportba tartozó sorok
element_typeéstridoszlopa megegyezik. - Az a sor, amelynek nincs forrásnyelve (NULL), a csoport eredeti eleme.
Oszlopai:
| Oszlop | Jelentés |
|---|---|
translation_id |
sorszám |
element_type |
az elem típusa (a wpml_element_type hook adja vissza) |
element_id |
az elem azonosítója (bejegyzéstípusoknál a post_id, taxonómiáknál a term_taxonomy_id) |
trid |
a fordítási csoport azonosítója |
language_code |
az elem nyelvkódja |
source_language_code |
fordított elemnél az eredeti elem nyelve |
Példa: egy angol bejegyzés azonosítója 3, a spanyol fordítása a 7-es azonosítójú. A tábla így néz ki:
| translation_id | element_type | element_id | trid | language_code | source_language_code |
|---|---|---|---|---|---|
| 1 | post_post | 3 | 2 | en | NULL |
| 2 | post_post | 7 | 2 | es | en |
Mivel a két sor trid értéke azonos, egymás fordításai. Maga az érték nem fontos.
Zászlótábla: icl_flags
Szekció neve “Zászlótábla: icl_flags”A WPML sok országzászlót tartalmaz. A nyelvek és országok társítása nem mindig szerencsés, mert sok nyelvet több országban, olykor eltérően beszélnek. A zászló mégis hasznos vizuális támpont, amelyről a látogató könnyen felismeri a nyelvét.
A zászlók a res/flags mappában vannak, az icl_flags tábla pedig megmondja, melyik nyelvhez melyik zászló tartozik. Oszlopai:
| Oszlop | Jelentés |
|---|---|
id |
sorszám |
lang_code |
a nyelvkód |
flag |
a zászlófájl neve |
from_template |
0: a zászló a WPML res/flags mappájából jön, 1: a témamappából |
Másik zászló használatához nyisd meg a WPML → Settings → Languages oldal Manage and Hide Site Languages részét, kattints az adott nyelv sorában az Edit gombra, és nyisd meg a zászlólistát. Az utolsó elem, az Upload a custom SVG, a saját fájlodat fogadja. Ugyanezen a képernyőn adhatsz hozzá egyedi nyelvet is.
Sztringfordítási táblák
Szekció neve “Sztringfordítási táblák”Sok WordPress-oldalon vannak olyan szövegek, amelyek nem tartoznak bejegyzéshez, oldalhoz, címkéhez vagy kategóriához, de fordítani kell őket (például a blog szlogenje). Ezeket a WPML a String Translation mechanizmussal kezeli.
A sztringek az icl_strings táblában vannak:
| Oszlop | Jelentés |
|---|---|
id |
sorszám |
language |
nyelv |
context |
a sztring környezete (mihez tartozik) |
name |
a sztring neve |
value |
a sztring tartalma |
string_package_id |
a csomag azonosítója, amelyhez a sztring tartozik |
type |
a fordítószerkesztő típusa: LINE, AREA vagy VISUAL |
title |
a sztring címe a fordítószerkesztőben |
status |
jelzi, hogy a sztring minden nyelvre le van-e fordítva |
gettext_context |
a gettext-függvényben (például _x) megadott kontextus |
domain_name_context_md5 |
egyedi kulcs a gyorsabb kereséshez |
A sztringek fordításai az icl_string_translations táblában vannak:
| Oszlop | Jelentés |
|---|---|
id |
sorszám |
string_id |
a lefordított sztring azonosítója |
language |
a fordítás nyelve |
status |
a fordítás állapota (kész / nem kész) |
value |
maga a fordítás |
translator_id |
a fordító azonosítója |
translation_service |
a használt szolgáltatás: üres, helyi vagy külső szolgáltatás |
batch_id |
a köteg azonosítója, ha külső szolgáltatás fordította |
translation_date |
a fordítás ideje |
A WPML összes táblája
Szekció neve “A WPML összes táblája”A WPML a következő táblákat használja (a wp_ előtag a saját adatbázis-előtagoddal helyettesítendő):
wp_icl_background_taskwp_icl_content_statuswp_icl_core_statuswp_icl_flagswp_icl_languageswp_icl_languages_translationswp_icl_locale_mapwp_icl_message_statuswp_icl_mo_files_domainswp_icl_nodewp_icl_reminderswp_icl_stringswp_icl_string_batcheswp_icl_string_packageswp_icl_string_positionswp_icl_string_statuswp_icl_string_translationswp_icl_translatewp_icl_translate_jobwp_icl_translationswp_icl_translation_batcheswp_icl_translation_downloadswp_icl_translation_statusAz adatbázistáblák optimalizálása
Szekció neve “Az adatbázistáblák optimalizálása”A WPML egyszeri optimalizálási folyamata a wp_icl_translate és a wp_icl_translation_status tábla méretét csökkenti:
- kitisztítja a fordítási táblákból az elavult vagy fölösleges adatot,
- az új adatot tömörítve, kisebb helyen tárolja,
- a felszabadult hely újrahasznosításával megelőzi az adatbázis jövőbeli duzzadását.
Az optimalizálás a táblákban lévő adat mennyiségét csökkenti, a lemezen lévő fájl méretét nem. A lemezhely visszanyeréséhez a táblákat kézzel kellene újraépíteni, ez nem része a folyamatnak.
Az optimalizálás futtatása
Szekció neve “Az optimalizálás futtatása”A Database & strings maintenance a WPML Troubleshooting bővítmény része. Előbb telepítsd a WPML → Activate & Update oldalról.
- Nyisd meg a WPML → Support oldalt, és kattints a Database & strings maintenance elemre.
- Görgess a Database Tables Optimization szakaszhoz.
- Jelöld be az I understand and want to proceed négyzetet, majd kattints az Optimize translation tables gombra.
Ennek a képernyőnek minden eszköze közvetlenül a WPML tábláiba ír, és fordításokat veszíthet. Futtatás előtt készíts teljes adatbázis-mentést.
Készült: