WordPress plugin of thema vertalen voor beginners
Dit artikel is inmiddels wat ouder. Er is ook een nieuwer artikel over dit onderwerp, met extra informatie. Ik raad je beslist aan ‘Een Website In Je Moeders Taal – Nogmaals Het Vertalen Van Plugins‘ ook te lezen.
Soms kom je op het Internet een plugin tegen, die is zo mooi en geweldig is, dat je hem wel moet hebben. Maar helaas, wanneer je hem gebruikt, merk je dat alle uitvoer in het Engels is, terwijl jij toch echt een Nederlandse site hebt. En die Engelse kreten wil je toch eigenlijk niet dwars door jouw goed-lopende Nederlandse tekst hebben.
Als je geluk hebt, heeft de programmeur bij het ontwikkelen van de plugin al rekening gehouden met een vertaling. Alleen, omdat hij geen Nederlands spreekt, is de vertaling nog niet beschikbaar. Als de programmeur zich echter aan de richtlijnen van WordPress heeft gehouden, kun jij zelf eenvoudig een vertaling maken zonder ook maar enig verstand van programmeren te hoeven hebben.
Om te bepalen of het inderdaad mogelijk is een vertaling te maken, moet je de plugin downloaden als ‘zip’ bestand en uitpakken. Mocht je niet weten hoe je dat doet, is de rest van de handelingen waarschijnlijk ook niet iets waar je je gemakkelijk bij zult voelen. In dat geval raad ik je aan een kennis van je te vragen je hiermee te helpen. De rest kan rustig doorlezen.
Een goede plugin programmeur heeft de teksten in zijn plugin niet zomaard hard gecodeerd, maar maakt gebruik van een systeem wat ‘GetText‘ wordt genoemd. Zonder er al te diep op in willen gaan, komt het erop neer, dat hij in het programma alle tekst die getoond moet worden op een speciale manier aanmerkt. Daarna wordt met behulp van een ondersteuningsprogramma al deze tekst in een bestand gezet met als extensie ‘pot’. Als de programmeur zijn werk goed gedaan heeft, wordt dit ‘pot’ bestand meegeleverd met de plugin of het thema.
Nu moet ik eerlijk zeggen dat ik, terwijl ik zocht naar een goed voorbeeld om te vertalen, eigenlijk alleen plugins tegen kwam die of geen ondersteuning voor vertaling boden, of dit wel boden, maar waar de Nederlandse vertaling al bij aanwezig was. Toch zijn er nog talloze plugins en thema’s in omloop die nog niet vertaald zijn. Ook kan het zo zijn, dat de plugin wel vertaald is, maar je niet tevreden bent over de wijze waarop.
Als voorbeeld nemen we WP to Twitter. Wanneer we naar de bestanden kijken zien we onder meer :
wp-to-twitter.pot
wp-to-twitter-ru_RU.po
wp-to-twitter-ru_RU.mo
Dit ‘pot’ bestand heb je nodig, wanneer je een compleet nieuwe vertaling wilt maken. Het bevat alle gevonden Engelse teksten uit de programmacode zonder een vertaling. De wp-to-twitter-ru_RU.po file bevat de Russische vertaling in een voor mensen leesbaar -mits ze het cyrillisch schrift kunnen lezen natuurlijk- formaat. Het wp-to-twitter-ru_RU.mo is een formaat wat snel door de computer kan worden ingelezen.
De bestanden kunnen worden ingelezen met een hulpprogramma : PoEdit. Dit programma werkt onder verschillende besturingssystemen. De schermafdrukken die je hier zult zien zijn op Ubuntu Linux gemaakt. Andere versies kunnen er enigzins anders uitzien, maar het principe blijft hetzelfde.
Na het opstarten kies je onder ‘File’ voor ‘New catalog from POT file’ en je opent het wp-to-twitter.pot bestand. Je krijgt dan een scherm waar je eventuele projectgegevens in kunt vullen. Dit mag je overslaan. Daarna geef je aan onder welke naam je het ‘po’ bestand opgeslagen wilt hebben. Deze bestandsnamen hebben een vast formaat : Het moet de naam van de plugin plus de taalcode zijn. Deze taalcodes zijn van te voren al vastgelegd en voor Nederland is het nl_NL, de complete bestandsnaam is dus wp-to-twitter-nl_NL.po
Omdat het bestand al bestond heb ik het wp-to-twitter-gi_GI.po genoemd (van ‘Gibberish’, wartaal).
Dan krijgen we het volgende scherm te zien :
In de lijst boven, zien we de nog niet vertaalde teksten in het blauw. Op het moment dat we het programma openen is er nog niets vertaald. Vertalen doen we door in het tekstvlak helemaal onder aan het scherm onze vertaling in te tikken. Na het vertalen van een tweetal zinnen, ziet het scherm er als volgt uit :
Wanneer je klaar bent met de vertaling, of even een pauze wilt houden, sla je je werk op met control-S of command-S, afhankelijk van je systeem. Er worden zowel een .po als een .mo bestand opgeslagen. Het .mo bestand plaats je op je server, op dezelfde plaats waar je de andere .po en .mo bestanden hebt staan.
Als je een Nederlandse vertaling hebt, maar de tekst bevalt je niet, bijvoorbeeld omdat alles in de ‘u’ vorm staat, terwijl je hele site de ‘jij’ vorm gebruikt, kun je met ‘File -> Open’ een .po bestand openen en de tekst bijwerken.Zorg wel dat je het bestand nog op een andere plaats dan op je server bewaart, omdat bij een upgrade het taalbestand overschreven zal worden door een nieuwe versie. Het is jouw taak om ervoor te zorgen, dat het aangepaste bestand weer op de server komt te staan.
Soms staan er codes in de tekst. Bijvoorbeeld ‘You are not allowed to change %s’. Zorg ervoor, dat deze code in de tekst blijft staan, maar op een plaats die logisch klinkt in de Nederlandse taal : ‘Je mag %s niet aanpassen’ bijvoorbeeld. (Op de plaats van %s wordt later door het programma een waarde ingevuld). Ook gebeurt het nogal eens -i” ets wat overigens een foute gewoonte is- dat de programmeur HTML code in zijn tekst heeft staan :
<a href=”clickhere.php”>Click here</a>
In dit geval vertaal je alleen de code tussen de HTML tags, dus bijvoorbeeld : <a href=”clickhere.php”>Klik hier</a>
Wanneer de programmeur van de plugin gezorgd heeft voor een goede GetText ondersteuning is het vertalen van een plugin naar het Nederlands een eenvoudige zaak. Wanneer hij dit echter heeft nagelaten, betekent het vertalen van een plugin het ‘hacken’ van de code, iets wat je niet moet willen. Wil je toch een GetText versie van de plugin, heb ik een goede tip voor je :