Naar de pagina-inhoud

Je WordPress plugin vertaalbaar maken


Als je een WordPress plugin maakt – voor jezelf, een klant of om in de WordPress Repository op te nemen – dan is het wel zo handig om deze beschikbaar te maken in meerdere talen. Of in ieder geval andere gebruikers de gelegenheid te geven om jouw plugin makkelijk te gebruiken in hun eigen taal.

De manier van vertalen is hetzelfde als bij WordPress themes, het enige verschil is de manier waarop je WordPress laat weten dat er vertaalmogelijkheden zijn en waar het bestand staat. Dit doe je met load_plugin_textdomain:

load_plugin_textdomain( $domain, $abs_rel_path, $plugin_rel_path )

Uitleg functie

  • $domain – een unieke identifier, bijvoorbeeld de mapnaam van je plugin (ie. mijn_plugin)
  • $abs_rel_path – het relatieve pad (vanaf ABSPATH bekeken) naar de map waar het taalbestand in zit – werkt tot WP2.7
  • $plugin_rel_path – het relatieve pad (vanaf WP_PLUGIN_DIR, de map waar alle plugins in staan). Deze dient vanaf WP2.7 gebruikt te worden.

Een voorbeeld van de toepassing:

load_plugin_textdomain( 'my_plugin_domain', false, dirname( plugin_basename( __FILE__ ) ) . '/languages' )

Onderstaande code heeft de mapnaam van het huidige bestand als output en daarom wordt deze gebruikt als opgaaf voor de $plugin_rel_path.

dirname( plugin_basename( __FILE__ ) ) 

Het vertalen

Het vertalen zelf doe je met een programma als Poedit.

Vertaalbestand

Het vertaalbestand moet als volgt genoemd worden: $domain-{langcode}.mo, wat bijvoorbeeld uitkomt op het volgende: mijn_plugin-nl_NL.mo.

Bij $domain gebruik je dus dezelfde unieke identifier als dat je hebt gebruikt om de te vertalen strings mee op te geven (en die je opgeeft in de load_plugin_textdomain functie).

Deel Tweet Deel +1


Ontzettende autodidact. Begonnen met HTML in 2001, PHP in 2004. Een eigen CMS geschreven in 2008. Bij voltooiing echter besloten toch voor een open-source oplossing te gaan: WordPress. Geen moment spijt van gehad.


Gerelateerde berichten


*