A Gettext többes számának megértése: Hogyan kezeljük a komplex többes számot a WordPressben

Az angolban a többes szám képzése egyszerű. Van egy "Apple" (alma), és van kettő vagy több "Apples" (almák).
De ha a WordPress webhelyedet lengyelre, oroszra vagy arabra fordítod, egy nyelvi aknamezőbe lépsz.
Tudtad, hogy oroszul a "fájl" szó megváltozik attól függően, hogy 1 fájlod, 2-4 fájlod vagy 5+ fájlod van?
- 1 файл (1 fájl)
- 3 файла (3 fájl)
- 5 файлов (5 fájl)
Ha a fordítóeszközöd vakon feltételezi, hogy minden nyelv úgy működik, mint az angol (egyes szám vs. többes szám), a felhasználóid nyelvtanilag helytelen mondatokat fognak látni, ami miatt a márkád szakszerűtlennek tűnik.
Ez az útmutató elmagyarázza, hogyan kezeli a WordPress és a Gettext ezeket a komplex szabályokat, és hogyan automatizálhatod őket helyesen.
A többes számú karakterlánc technikai felépítése
Egy szabványos .po fájlban egy többes számú karakterlánc így néz ki:
msgid "You have %d new message"
msgid_plural "You have %d new messages"
msgstr[0] ""
msgstr[1] ""
msgid: Az egyes számú forma (count = 1 esetén használatos).msgid_plural: A többes számú forma (count != 1 esetén használatos).msgstr[N]: A fordítások.
Angol nyelvnél csak a msgstr[0] (egyes szám) és a msgstr[1] (többes szám) szükséges. De más nyelveknél szükség lehet a msgstr[2], msgstr[3] vagy akár a msgstr[5] használatára is.
A Plural-Forms fejléc
Honnan tudja a WordPress, hogy melyik msgstr-t használja? Megnézi a .po fájl fejlécét.
Orosz nyelv esetén a fejléc így néz ki:
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"
Ez a rémisztő matematikai képlet a következőt mondja meg a WordPressnek:
- 3 lehetséges forma létezik (
nplurals=3). - A 0. formát használd, ha a szám 1-re végződik (de nem 11-re).
- Az 1. formát használd, ha a szám 2-4-re végződik (de nem 12-14-re).
- A 2. formát használd minden más esetben.
Miért buknak el itt a legtöbb fordító?
Ha egy általános AI wrappert vagy egy egyszerű automatizált eszközt használsz, az gyakran figyelmen kívül hagyja a Plural-Forms fejlécet.
Látja az angol bemenetet (2 forma), és megpróbálja ráerőltetni a célnyelvre.
- A hiba: Kitöltheti a
msgstr[0]és amsgstr[1]értékét, de amsgstr[2]üresen marad. - Az eredmény: Amikor egy orosz felhasználónak 5 üzenete van, a WordPress a 2. formát keresi. Ha az üres vagy hiányzik, a WordPress általában visszaugrik az eredeti angol karakterláncra.
Hirtelen a teljesen lokalizált webhelyeden megjelenik az "You have 5 new messages" (5 új üzeneted van) angolul, egy orosz mondat közepén. Ez megtöri a beleélést és a felhasználói bizalmat.
A megoldás: Kontextusérzékeny AI többes szám támogatással
A többes számok helyes kezelése két dolgot igényel:
- A Gettext szabványok szigorú betartása: Az eszköznek tiszteletben kell tartania az
npluralsszámot a fejlécben. - Nyelvi intelligencia: Az AI-nak tudnia kell, hogyan kell ragozni a szavakat ezekhez a konkrét numerikus tartományokhoz.
Ez a SimplePoTranslate natív funkciója.
Hogyan kezeljük a komplex többes számokat?
Mi nem csak szöveget fordítunk; elolvassuk a matematikát a .po fejlécben.
Amikor feltöltesz egy fájlt lengyelre fordításra (amelynek 3 többes számú formája van):
- Fejléc elemzés: Észleljük az
nplurals=3értéket. - Prompt Engineering: Rendszerünk utasítja a kontextusérzékeny AI-t: "Fordítsd le ezt a karakterláncot lengyelre. Pontosan 3 formát adj meg: egyet az egyes számra, egyet a 2-4-re végződő számokra, és egyet a többire."
- Érvényesítés: A fájl összeállítása előtt ellenőrizzük, hogy a kimenet pontosan tartalmazza-e a
msgstr[0],msgstr[1]ésmsgstr[2]értékeket.
Ezt automatikusan kezeljük. Nem kell ismerned a célnyelv nyelvtani szabályait. Feltöltöd a fájlt, és mi helyesen kitöltjük az összes szükséges többes számú formát.
Jobb, mint a manuális fordítás?
Ha nem beszéled folyékonyan a célnyelvet, nem tudod manuálisan kitölteni ezeket a többes számú formákat. Találgatnod kellene. A SimplePoTranslate olyan fejlett LLM-eket használ, amelyeket pontosan ezekre a nyelvtani szabályokra képeztek ki, biztosítva a natív szintű pontosságot.
Kezeld helyesen a többes számokat
Ne hagyd, hogy az "1 Apple, 5 Apples" (1 alma, 5 almák) tönkretegye a webhelyed professzionális megjelenését. Használj olyan eszközt, amely megérti a globális nyelvtan összetettségét.
A SimplePoTranslate lehetővé teszi, hogy ingyenesen teszteld a többes szám képző motorunkat.
Készen állsz a fordításra fejfájás nélkül? Kezdd el ingyen a SimplePoTranslate.com oldalon