OminaisuudetLisäosaHinnastoResurssit
Vaihda kieltä
ResurssitYksi tiedosto sisään, viisi muotoa ulos: Kuinka varmistaa WordPress-käännösten toimivuus tulevaisuudessa

Yksi tiedosto sisään, viisi muotoa ulos: Kuinka varmistaa WordPress-käännösten toimivuus tulevaisuudessa

SimplePoTranslate Team21. maaliskuuta 2026
Yksi tiedosto sisään, viisi muotoa ulos: Kuinka varmistaa WordPress-käännösten toimivuus tulevaisuudessa

Olet käyttänyt kolme viikkoa WordPress-teemasi kääntämiseen espanjaksi. .po-tiedosto on täydellinen – jokainen merkkijono tarkistettu, jokainen muuttuja ehjä, jokainen monikkomuoto oikein. Sitten asiakkaasi päättääkin siirtyä perinteisestä PHP-teemasta headless-asennukseen Reactin ollessa käyttöliittymänä.

Yhtäkkiä .po-tiedostosi onkin hyödytön. React-sovellus tarvitsee .json-tiedoston. Vanhat PHP-widgetit tarvitsevat edelleen .mo-tiedoston. Freelancer, joka hoitaa mobiilisovellusta, haluaa .xliff-tiedoston. Eikä kenelläkään ole aikaa kääntää 4 000 merkkijonoa uudelleen kolmeen eri muotoon.

Tämä ei ole mikään harvinainen poikkeustapaus. Se on modernin WordPress-kehityksen todellisuutta, jossa teemojen mukana toimitetaan sekä PHP- että JavaScript-komponentteja, lisäosat käyttävät Gettextin ja i18nextin sekoitusta, ja asiakkaat muuttavat mielensä arkkitehtuurista useammin kuin he vaihtavat salasanojaan.

Miksi käännöstiedostomuodoilla on enemmän merkitystä kuin koskaan

Viisi vuotta sitten WordPress-kääntäminen oli yksinkertaista. Sinulla oli .po-tiedosto (ihmisluettava lähde) ja .mo-tiedosto (käännetty binääri). Siinä kaikki. Jokainen teema, jokainen lisäosa, jokainen käännöstyökalu puhui samaa kieltä.

Nykyään WordPress-ekosysteemi käyttää vähintään viittä käännöstiedostomuotoa tuotannossa:

Viisi muotoa, jotka sinun on tiedettävä

.po (Portable Object) – GNU Gettextin käyttämä ihmisluettava lähdemuoto. Sisältää alkuperäiset merkkijonot (msgid) ja niiden käännökset (msgstr). Tätä kääntäjät muokkaavat.

msgid "Add to Cart"
msgstr "Anadir al carrito"

msgid "Your order has been shipped to %s"
msgstr "Su pedido ha sido enviado a %s"

.mo (Machine Object).po-tiedoston käännetty binääriversio. WordPress lukee .mo-tiedostoja ajonaikaisesti käyttämällä load_textdomain()-funktiota. Nopeampi kuin .po-tiedoston jäsentäminen ajonaikaisesti, mutta ei ihmisen muokattavissa.

.json (JavaScript Object Notation) – Käytetään wp_set_script_translations()-funktiossa JavaScript-pohjaisiin käännöksiin Gutenberg-lohkoissa, React-komponenteissa ja moderneissa teemoissa. WordPress odottaa tiettyä JSON-rakennetta, jossa on locale_data-avaimet.

{
  "locale_data": {
    "flavor-starter": {
      "Add to Cart": ["Anadir al carrito"],
      "Your order has been shipped to %s": ["Su pedido ha sido enviado a %s"]
    }
  }
}

.php (PHP Array) – Yhä suositumpi muoto teemoille ja lisäosille, jotka käyttävät Laravel-tyylistä käännösten latausta. Jotkut modernit WordPress-teemat ohittavat Gettextin kokonaan ja lataavat käännökset PHP-taulukoista suorituskyvyn parantamiseksi.

<?php
return [
    'Add to Cart' => 'Anadir al carrito',
    'Your order has been shipped to %s' => 'Su pedido ha sido enviado a %s',
];

.xliff (XML Localization Interchange File Format) – Alan standardi käännösten vaihtoon eri työkalujen ja alustojen välillä. Käytetään CAT-työkaluissa (Computer-Assisted Translation) kuten memoQ, Trados ja Memsource. Välttämätön, kun työskennellään ammattimaisten kääntäjien kanssa.

<trans-unit id="1">
  <source>Add to Cart</source>
  <target>Anadir al carrito</target>
</trans-unit>

Ongelma: Muotoon lukittuminen

Useimmat käännöstyökalut tuottavat yhden tulostusmuodon. Poedit antaa sinulle .po- ja .mo-tiedostot. WPML tallentaa käännökset tietokantaan (ei tiedostoihin ollenkaan). Weglot pitää käännökset palvelimillaan omassa muodossaan. Jopa TMS-alustat, kuten Crowdin ja Lokalise, vaativat, että määrität manuaalisesti vientimuodot jokaiselle projektille.

Tämä luo muotoon lukittumisen – käännöksesi ovat loukussa siinä muodossa, jonka nykyinen työkalusi tuottaa. Kun vaatimuksesi muuttuvat, kohtaat kaksi vaihtoehtoa:

  1. Käännä kaikki uudelleen uudessa muodossa (kallista, aikaa vievää ja menetät kaikki manuaaliset korjaukset)
  2. Kirjoita mukautettuja muunnosscriptejä (virhealtista, erityisesti monimutkaisille monikkomuodoille ja muuttujille)

Kumpikaan vaihtoehto ei ole hyvä. Molemmat tuhlaavat aikaa ja rahaa. Molemmat aiheuttavat riskejä.

Todellisia tilanteita, joissa muotoon lukittuminen sattuu

Tilanne 1: Teeman modernisointi. Asiakkaasi teemaa rakennetaan uudelleen Gutenberg-lohkoilla. Vanhat PHP-mallit käyttivät .mo-tiedostoja. Uudet lohkot tarvitsevat .json-tiedostoja wp_set_script_translations()-funktiota varten. 3 000 käännetyn merkkijonosi on oltava molemmissa muodoissa siirtymisen aikana.

Tilanne 2: Toimistotyönkulku. Hallinnoit 20 asiakkaan sivustoa. Jotkut käyttävät klassisia teemoja (.mo). Jotkut käyttävät headless-asennuksia (.json). Yksi käyttää mukautettua frameworkia, joka lukee PHP-taulukoita. Tarvitset samat käännökset eri muodoissa eri asiakkaille.

Tilanne 3: Ammattimainen tarkistus. Tekoälykäännöksesi ovat 95 % tarkkoja, mutta haluat, että natiivipuhuja tarkistaa loput 5 %. Ammattikääntäjät käyttävät CAT-työkaluja, jotka tuovat .xliff-tiedostoja. Sinun on vietävä käännöksesi .xliff-muotoon, lähetettävä ne tarkistettavaksi ja yhdistettävä korjaukset takaisin.

Tilanne 4: Alustan siirto. Asiakkaasi on siirtymässä WordPressistä mukautettuun Node.js -sovellukseen. Uusi sovellus käyttää i18nextiä ja tarvitsee .json-tiedostoja. 5 000 käännetyn merkkijonosi .po-muodossa on muunnettava – menettämättä yhtäkään muuttujaa tai monikkomuotoa.

Ratkaisu: Käännä kerran, saat jokaisen muodon

SimplePoTranslate lähestyy asiaa eri tavalla. Kun lataat .po-, .pot-, .json- tai .xliff-tiedoston ja suoritat käännöksen, saat takaisin ZIP-tiedoston, joka sisältää kaikki viisi muotoa:

translations-es_ES.zip
├── flavor-starter-es_ES.po
├── flavor-starter-es_ES.mo
├── flavor-starter-es_ES.json
├── flavor-starter-es_ES.php
└── flavor-starter-es_ES.xliff

Tämä ei ole mikään "premium-ominaisuus", joka on lukittu yritystason taakse. Jokainen maksullinen suunnitelma – Pro (19 dollaria/kuukausi) ja Lifetime (399 dollaria kertamaksu) – sisältää kaikki viisi tulostusmuotoa jokaisessa käännöstyössä.

Miksi tällä on merkitystä tulevaisuuden varmistamisen kannalta

Kun sinulla on kaikki viisi muotoa alusta alkaen, sinun ei koskaan tarvitse kääntää uudelleen. Käännöksesi ovat omaisuutta, joka mukautuu mihin tahansa tekniseen vaatimukseen:

  • Asiakas siirtyy klassisesta Gutenbergiin? Ota .json-tiedosto käyttöön.
  • Uusi kehittäjä pitää PHP-taulukoista? Anna heille .php-tiedosto.
  • Ammattikääntäjä haluaa tarkistaa? Lähetä .xliff-tiedosto.
  • Siirtyminen eri CMS:ään? .json- ja .xliff-tiedostot ovat alustariippumattomia.

Käännät kerran. Muodot ovat valmiina, kun tarvitset niitä.

Kuinka kukin muoto toimii WordPressissä

Tietäminen, mikä tiedosto menee minnekin, on olennaista puhtaan käyttöönoton kannalta.

.mo-tiedostojen käyttöönotto (klassiset PHP-teemat ja lisäosat)

wp-content/languages/plugins/woocommerce-es_ES.mo
wp-content/languages/themes/flavor-starter-es_ES.mo

WordPress lataa nämä automaattisesti, kun sivuston kieli vastaa. Ei vaadi lisäosaa. Ei tietokannan ylikuormitusta. Tämä on lähestymistapa, joka tarjoaa parhaan suorituskyvyn.

.json-tiedostojen käyttöönotto (Gutenberg-lohkot ja JS-komponentit)

wp-content/languages/plugins/woocommerce-es_ES-{handle}-{md5}.json

Tiedostonimi sisältää script handle -tunnisteen ja MD5-hajautusarvon. WordPress täsmää nämä, kun kutsut wp_set_script_translations()-funktiota lisäosassasi tai teemassasi. Jos rakennat Gutenberg-lohkoja, tämä tiedosto saa käännetyt lohkotunnisteet ja kuvaukset näkymään oikein.

.xliff-tiedostojen käyttö (ammattimainen tarkistustyönkulku)

.xliff-tiedostoja ei oteta käyttöön WordPressissä. Niitä käytetään vaihtomuotona, kun sinun on lähetettävä käännöksiä ammattimaiselle tarkistajalle tai tuotava niitä CAT-työkaluun. Työnkulku näyttää tältä:

  1. Lataa .po SimplePoTranslateen ja hanki .xliff ZIP-tiedostosta
  2. Lähetä .xliff kääntäjällesi tai tarkistajallesi
  3. Vastaanota korjattu .xliff takaisin
  4. Lataa korjattu .xliff SimplePoTranslateen ja hanki päivitetty .mo ja .json

Tämä edestakainen työnkulku säilyttää jokaisen muuttujan ja monikkomuodon, koska SimplePoTranslate's Syntax Locking suojaa niitä jokaisessa vaiheessa.

Vendor Lock-In -testi

Tässä on yksinkertainen testi sen määrittämiseksi, onko nykyisessä käännöstyönkulussasi lukittumisongelma:

  1. Voitko viedä käännöksesi tavallisina .po-tiedostoina juuri nyt?
  2. Jos peruutat käännöstyökalutilauksesi tänään, pidätkö jokaisen käännetyn merkkijonon?
  3. Voitko tuoda käännöksesi täysin eri työkaluun tai alustalle kääntämättä uudelleen?

Jos vastaus johonkin näistä on "ei", olet lukittu. Palvelut, kuten Weglot ja GTranslate, epäonnistuvat kaikissa kolmessa kysymyksessä – peruuta tilaus ja käännöksesi katoavat. WPML tallentaa käännökset tietokantaan, mikä tekee viennistä mahdollista, mutta tuskallista. Jopa työpöytätyökalut, kuten Poedit, läpäisevät testin paperilla, mutta rajoittavat sinut vain .po- ja .mo-tiedostoihin.

SimplePoTranslateen avulla vastaus kaikkiin kolmeen kysymykseen on "kyllä". Lataat vakiotiedostoja viidessä muodossa. Ne ovat sinun. Poista tilisi huomenna, niin jokainen tekemäsi käännös toimii edelleen.

Muodosta riippumattoman käännöskirjaston rakentaminen

Toimistoille ja kehittäjille, jotka hallinnoivat useita projekteja, älykkäin lähestymistapa on rakentaa käännöskirjasto – Git-repository tai jaettu kansio, johon tallennat käännetyt tiedostot jokaiselle asiakasprojektille.

translations/
├── client-acme/
│   ├── es_ES/
│   │   ├── flavor-starter-es_ES.po
│   │   ├── flavor-starter-es_ES.mo
│   │   ├── flavor-starter-es_ES.json
│   │   ├── flavor-starter-es_ES.php
│   │   └── flavor-starter-es_ES.xliff
│   └── de_DE/
│       └── ...
├── client-globex/
│   └── ...

Kun asiakas tarvitsee uuden muodon, sinulla on se jo. Kun asiakas vaihtaa alustaa, käännöksesi siirtyvät vaivattomasti. Kun uusi kehittäjä liittyy tiimiin, hän näkee tarkalleen, mitä on käännetty ja missä muodoissa.

Tätä "tulevaisuuden kestävä" todella tarkoittaa – ei sen ennustamista, mitä teknologiaa asiakkaasi käyttävät ensi vuonna, vaan sen varmistamista, että käännöksesi toimivat riippumatta siitä, minkä he valitsevat.

Oletko valmis lopettamaan tiedostomuodoista huolehtimisen? Kokeile SimplePoTranslatea ilmaiseksi – lataa yksi tiedosto, saat viisi muotoa takaisin. Ei muunnosscriptejä, ei uudelleenkäännöstä, ei lukitusta.

Aiheeseen liittyvät aiheet