Monikieliset WordPress-sivut
WordPress-sivuston eri kieliversiot voidaan toteuttaa lisäosan tai esimerkiksi WordPress network -asennuksen (nk. multisite) avulla.
Monikielisyys lisäosan avulla
Lisäosan avulla toteutettu monikielisyys voidaan toteuttaa kääntämällä artikkelit, sivut ja valikot eri kielille, jolloin itse sivusto pysyy käytännössä samana eri kieliversioissa, ainoastaan kieli muuttuu.
Ominaisuudet ja toiminnot vaihtelevat hieman lisäosasta riippuen. Esimerkiksi osa monikielisyys-lisäosista tukee omaa erillistä verkkotunnusta eri kieliversioihin ja osa taas ei. Kannattaa siis tutustua lisäosaan ja sen toimintoihin ennen kuin valitsee omalle sivustolle sopivan ratkaisun, sillä jälkikäteen lisäosaa voi olla hankala vaihtaa toiseen.
Useimmiten käytettyjä monikielisyys-lisäosia:
- Polylang (suositeltu)
- WPML
- TranslatePress
- MultilingualPress
- Weglot
WPML ja Polylang
Perinteisesti yleisin lisäosa WordPressin monikielisyyden toteuttamiseen on ollut WPML. Tämä johtuu lähinnä siitä, että se oli ensimmäinen lajissaan ja tuli siksi aikoinaan tunnetuksi ja laajasti käytetyksi. WPML toimii Seravon WP-palvelussa ja sitä voi halutessaan käyttää. Suosittelemme kuitenkin tutustumaan myös uudempaan ja siksi vähemmän tunnettuun, mutta meidän mielestämme parempaan vaihtoehtoon nimeltä Polylang.
Polylangin avoimen lähdekoodin ilmaisversiolla voi tehdä kaikki perusasiat, joita monikielisellä WordPress-sivustolla tarvitaan. Lisätarpeisiin löytyy myös maksullinen Polylang Pro. WPML:ään verrattuna se on uudempaa ja kevyempää koodia, minkä takia se toimii luotettavammin ja nopeammin. Seravon tekemissä WordPressin nopeusanalyyseissä WPML on monesti eniten hitautta sivustolle aiheuttava lisäosa. Moni WordPress-kehittäjä on kyllästynyt WPML:ää riivaaviin pikkuongelmiin, ja Suomessa Polylangin suosio onkin ohittamassa WPML:n. Polylang lisäksi kehittyy nopeasti, koska se on avointa lähdekoodia, kun taas WPML:n tekjät eivät halua vastaanottaa muiden koodiparannuksia ohjelmistoonsa tai tehdä yhteistyötä avoimen lähdekoodin hengessä.
Seravon blogista löytyy artikkeli siitä, miten WPML:stä vaihdetaan Polylangiin. Toinen uusi vaihtoehto monikielisyyden toteuttamiseen on MultilingualPress.
WPML:n tiedossa olevat ongelmat
WPML hidastaa sivustoa olennaisesti
WordPress-sivustojen nopeusprofiloinneissa WPML näkyy usein eniten hitautta aiheuttavana lisäosana. Lisätietoja voi katsoa Seravon henkilökunnan esityksestä WordCamp Europe 2017:ssa.
Osoitteiden ohjaukset voivat rikkoutua
Huom! WPML-lisäosan kanssa on joillakin sivustoilla ilmennyt ohjausongelmia. Normaalisti WordPress ohjaa www.example.com-osoitteen example.com-osoitteeseen, mutta WPML ohittaa tämän WordPressin toiminnallisuuden. Näin ollen sivusto saattaa olla näkyvissä sekä www:n kanssa että ilman.
Tästä syystä sivuston kehittäjän on itse huolehdittava WPML-sivustoilla että ns. canonical domain -ohjaus toimii. Vinkkejä PHP-koodiin kirjoittamiseen löytyy Seravon kehittäjädokumentaatiosta.
Nopea välimuisti ei toimi
WPML-lisäosan kehittäjät eivät ilmeisesti testaa lisäosaansa palvelinympäristöissä, joissa on Redis ja nopea object cache käytössä, koska olemme usein havainneet vikoja siinä miten WPML tallentaa ja käyttää object cachea väärin.
Kieliversiot network-asennuksen avulla
Toisinaan voi tulla tarve tehdä täysin erilaiset sivustot eri kielille. Täsllaisessa tilanteessa eri versiot poikkeavat niin paljon toisistaan rakenteellisesti, että samoja artikkeleita, sivuja ja menuvalikkoja ei voi suoraan kääntää. Silloin parempi vaihtoehto on WordPressin network-asennus eli multisite.
Network-asennuksessa eri kieliversiot (alasivut) voivat toimia joko alihakemistoissa tai aliverkkotunnuksina, jolloin on mahdollista myös erillisen verkkotunnuksen käyttäminen eri kieliversiossa.
Monikielisyys WooCommerce-verkkokaupassa
WordPress käsittelee WooCommerce-verkkokaupan tuotteita samoin kuin artikkeleita, joten kääntämiseen on suositeltavaa käyttää lisäosaa, varsinkin jos tuotteet ovat muuten samat ja tilaukset halutaan pitää yhden WordPress-sivuston alla. Monikielinen WooCommerce voi kuitenkin juuri tästä syystä hidastaa ja vaikeuttaa tietokannan toimintaa, ja voi tuoda etenkin muiden lisäosien myötä hankaluuksia sivustolle. Tämän vuoksi suosittelemme, että monikielisillä sivustoilla mahdollisten verkkokauppojen eri kieliversiot löytyvät omista asennuksistaan.
Jos tilaukset, varastot ja muut verkkokaupan toiminnot halutaan pitää erillään eri kieliversioissa, kannattaa monikielisyys toteuttaa network-asennuksena ja asentaa jokaiselle alasivulle tarpeen mukaan oma verkkokauppa.
Lisäosan kääntäminen
Joskus tulee tilanteita, jolloin itse lisäosa tai sen toimintoja täytyy kääntää toiselle kielelle. Kannattaa aina tarkistaa, mikäli lisäosaan löytyy valmiita käännöksiä lisäosan asetuksista tai uudemmista päivityksistä. Osa monikielisyyslisäosista tarjoaa myös mahdollisuuden kääntää lisäosien toimintoja.
WordPressin kieliasetukset
WordPressissä käytetyn kielen voi valita WordPressin hallintapaneelissa. Oletuskieli valitaan asetuksista (valikko Asetukset > Yleinen > Kieli):
Tämä kieli on oletuksena päällä jokaiselle käyttäjälle.
Kieltä voi vaihtaa myös käyttäjäkohtaisesti käyttäjätunnuksen asetuksista (Käyttäjät > Omat tietosi > Kieli):