De meeste WordPress thema’s zijn Engelstalig. Als je weblog gericht is op Nederlandstalig publiek, is het dus zaak om de alle Engelse teksten naar het Nederlands om te zetten.
Dit artikel beschrijft hoe je met de GNU gettext software alle Engelse teksten in een WordPress thema kan halen en zo een vertaling kan maken. Hierbij ga ik er van uit dat het thema netjes is geprogrammeerd en klaargemaakt is voor vertaling.
Benodigdheden: de gettext software, een shell prompt, een tekst editor en een talenknobbel.
Allereerst: ga naar de directory van het thema: (vervang themename door de naam van het thema wat je wil vertalen).
cd wp-content/themes/themename
Dan: maak een .pot en een .po file.
xgettext --keyword=__ --keyword=_e \
--default-domain=themename \
--language=php $(find . -type f -name '*.php') \
--output=themename.pot
cp themename.pot themename.po
Je hebt nu een bestand met alle tekst die vertaald kan worden. Bij een goed thema is dit alle tekst.
Nu komt het monnikenwerk: open de .po file in een tekst editor en vertaal alle tekst. Tekstblokjes hebben het volgende formaat:
#: comments.php:143
msgid "Submit"
msgstr ""
In de regel met msgstr "" zet je tussen de aanhalingstekens de tekst die je als vertaling wil hebben van “Submit”. Om te kijken in welke context het Engels wordt gebruikt kan je in de bijbehorende .php file kijken (in dit geval: regel 143 van comments.php)
Klaar? Dan is het tijd om het taalbestand te compileren naar een .mo file. Voor het Nederlands zal deze file nl_NL.mo heten.
Zeker van je zaak zijn? Kijk in de wp-config.php file of er een regel staat met define ('WPLANG', 'nl_NL');.
Gebruik het volgende commando:
msgfmt -o nl_NL.mo themename.po
Bijna klaar. Nu moet je het thema nog vertellen dat er een vertaling is. Zoek het bestand functions.php in het thema op en voeg de functie toe om de vertaling te laden:
// activate translation
load_theme_textdomain('themename');
Klaar? Gefeliciteerd, je hebt je eerste WordPress thema vertaald!
Tot slot: Overweeg je harde werk ter beschikking te stellen aan andere Nederlandstalige webloggers: stuur je vertaling op naar de auteur van het thema, of biedt het ter download aan op je eigen site.
{ 10 comments… lees ze hieronder of voeg er een toe }
Hoi Jules,
groetjes van eef
fijn, eindelijk iets over hoe een WP theme te vertalen -er is op het net gewoon niets over te vinden!
Nog vind ik het erg ingewikkeld; het engelse GNU gettex-artikel is gewoonweg niet doorheen te komen en jouw ‘how to’ is alleen begrijpelijk als je meer een coder dan een designer bent. Want wat en hoe is een shell prompt en waar precies maak je die .po file? En hoe precies ‘compileer’ je dat naar een .mo file? Aangezien je de enige nederlander bent op het web die uberhaupt enige uitleg geeft, waarom niet een complete, uitgebreide ‘dummy’ tutorial? -volgens mij is daar veel behoefte aan! (iig door mij
Eef, bedankt voor je reactie.
Als mijn tijd het toe laat, zal ik eens een uitgebreidere howto schrijven, en daarbij linken naar wat gebruikersvriendelijker tools.
Om je alvast op weg te helpen: er is een grafisch vertaal-programma dat heet POedit: http://www.poedit.net/
Als een thema of module al een .po file heeft, kan je die daarin openen en min of meer grafisch je vertaling maken.
Jules, dank voor je snelle antwoord! Ik ga dat poedit even bestuderen, thanks. En ik hou je blog in de gaten!
hartelijke gr, eef
Dank je wel, dit article was erg handig
Hoi Jules,
Ik zie dat je het Thesis theme in het Nederlands hebt vertaald. Kun je me vertellen waar ik het vertaalbestand voor thesis nl_NL.mo (of po?) kan downloaden?
@Johan
Deze vertaling is het werk van Jeroen de Miranda (www.jeroendemiranda.com)
Hij staat op mijn site, hierzo: http://blog.jongbelegen.net/wp-content/themes/thesis_151/nl_NL.mo
Bedankt voor je supersnelle reactie!
Jules,
Bedankt, wilde het net zelf vertalen maar zocht nog eventjes via Google en ja hoor. Jij hebt het er neer gezet.
Je hebt mij flink wat uurtjes bespaard.
He Jules,
Ik heb een interessant probleem met Thesis 1.6
Bij het opslaan van de design opties in Thesis (WordPress 2.9) ligt het hele ontwerp overhoop. Na wat speurwerk ontdekte ik dat in de custom/layout.css alle . in de getallen worden veranderd in ,
Dus 1.1em veranderd in 1,1em – incorrect dus.
Dit heeft een relatie met de taal instelling in WordPress. Als ik namelijk de nl_NL in wp-config.php verwijder zijn de problemen verdwenen.
Ik heb ook topic in forum geopend http://diythemes.com/forums/support/19453-layout-problems-upgrade-1-6-replaced.html
Hoi Jules,
groetjes van eef
fijn, eindelijk iets over hoe een WP theme te vertalen -er is op het net gewoon niets over te vinden!
Nog vind ik het erg ingewikkeld; het engelse GNU gettex-artikel is gewoonweg niet doorheen te komen en jouw 'how to' is alleen begrijpelijk als je meer een coder dan een designer bent. Want wat en hoe is een shell prompt en waar precies maak je die .po file? En hoe precies 'compileer' je dat naar een .mo file? Aangezien je de enige nederlander bent op het web die uberhaupt enige uitleg geeft, waarom niet een complete, uitgebreide 'dummy' tutorial? -volgens mij is daar veel behoefte aan! (iig door mij
{ 1 trackback }