Forstå Gettext-flertal: Sådan håndteres kompleks flertalsform i WordPress

På engelsk er flertalsform simpelt. Du har et "Apple", og du har to eller flere "Apples".
Men hvis du oversætter dit WordPress-site til polsk, russisk eller arabisk, er du ved at træde ind i et sprogligt minefelt.
Vidste du, at på russisk ændres ordet for "fil", afhængigt af om du har 1 fil, 2-4 filer eller 5+ filer?
- 1 файл (1 file)
- 3 файла (3 files)
- 5 файлов (5 files)
Hvis dit oversættelsesværktøj blindt antager, at alle sprog fungerer som engelsk (ental vs. flertal), vil dine brugere se grammatisk ukorrekte sætninger, der får dit brand til at se uprofessionelt ud.
Denne vejledning forklarer, hvordan WordPress og Gettext håndterer disse komplekse regler, og hvordan du automatiserer dem korrekt.
Den tekniske anatomi af en flertalsstreng
I en standard .po-fil ser en flertalsstreng sådan ud:
msgid "You have %d new message"
msgid_plural "You have %d new messages"
msgstr[0] ""
msgstr[1] ""
msgid: Entalsformen (bruges til count = 1).msgid_plural: Flertalsformen (bruges til count != 1).msgstr[N]: Oversættelserne.
For engelsk behøver du kun msgstr[0] (ental) og msgstr[1] (flertal). Men for andre sprog skal du muligvis bruge msgstr[2], msgstr[3] eller endda msgstr[5].
Headeren Plural-Forms
Hvordan ved WordPress, hvilken msgstr der skal bruges? Den ser på headeren i din .po-fil.
For russisk ser headeren sådan ud:
"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);"
Denne skræmmende matematiske formel fortæller WordPress:
- Der er 3 mulige former (
nplurals=3). - Brug Form 0, hvis tallet ender på 1 (men ikke 11).
- Brug Form 1, hvis tallet ender på 2-4 (men ikke 12-14).
- Brug Form 2 til alt andet.
Hvorfor de fleste oversættere fejler her
Når du bruger en generisk AI-wrapper eller et grundlæggende automatiseret værktøj, ignorerer det ofte Plural-Forms-headeren.
Den ser den engelske input (2 former) og forsøger at tvinge den ind i målsproget.
- Fejlen: Den kan udfylde
msgstr[0]ogmsgstr[1], men efterlademsgstr[2]tom. - Resultatet: Når en russisk bruger har 5 beskeder, leder WordPress efter Form 2. Hvis den er tom eller mangler, falder WordPress normalt tilbage på den originale engelske streng.
Pludselig viser dit fuldt lokaliserede site "You have 5 new messages" på engelsk, midt i en russisk sætning. Dette bryder fordybelsen og brugernes tillid.
Løsningen: Kontekstbevidst AI med flertalsunderstøttelse
Korrekt håndtering af flertal kræver to ting:
- Streng overholdelse af Gettext-standarder: Værktøjet skal respektere
nplurals-antallet i headeren. - Sproglig intelligens: AI'en skal vide hvordan man bøjer ordene for de specifikke numeriske intervaller.
Dette er en indbygget funktion i SimplePoTranslate.
Sådan håndterer vi komplekse flertal
Vi oversætter ikke bare tekst; vi læser matematikken i din .po-header.
Når du uploader en fil til oversættelse til polsk (som har 3 flertalsformer):
- Headeranalyse: Vi registrerer
nplurals=3. - Prompt Engineering: Vores system instruerer den kontekstbevidste AI: "Oversæt denne streng til polsk. Angiv præcis 3 former: en for ental, en for tal, der ender på 2-4, og en for andre."
- Validering: Vi verificerer, at outputtet indeholder nøjagtigt
msgstr[0],msgstr[1]ogmsgstr[2], før vi kompilerer filen.
Vi håndterer dette automatisk. Du behøver ikke at kende grammatikreglerne for målsproget. Du uploader filen, og vi udfylder alle krævede flertalsformer korrekt.
Bedre end manuel oversættelse?
Medmindre du taler målsproget flydende, kan du ikke manuelt udfylde disse flertalsformer. Du ville gætte. SimplePoTranslate udnytter avancerede LLM'er, der er trænet i disse nøjagtige grammatiske regler, hvilket sikrer nøjagtighed på modersmålsniveau.
Få dine flertal rigtige
Lad ikke "1 Apple, 5 Apples" ødelægge dit sites professionelle udseende. Brug et værktøj, der forstår kompleksiteten af global grammatik.
SimplePoTranslate giver dig mulighed for at teste vores flertalsmaskine gratis.
Klar til at oversætte uden hovedpine? Start gratis på SimplePoTranslate.com