WordPress plugins gör att du enkelt kan ändra och förbättra din blogg genom att föra ny funktionalitet som inte är tillgänglig på grundkoden.
Använda plugins fungerar mer effektivt än att försöka ändra den övergripande kärnprogrammet som utgör WordPress. Definierat som ett program eller en uppsättning funktioner skrivna i PHP, lägger till plugins specifika funktioner som enkelt kan integreras med bloggen via WordPress API.
Om du har skrivit ett WordPress-plugin kan du göra det mycket mer tillgängligt genom att översätta det till ett annat språk. Detta kallas internationalisering.
Innan du kan internationalisera ditt plugin måste du veta vad det betyder. Även känd som i18n innebär det att ändra plugin så att andra kulturer som talar andra språk enkelt kan använda din plugin.
Lokalisering däremot är själva förändringsprocessen.
Det finns mer att internationalisera än att bara översätta gränssnittet. Till exempel, antaganden som du har gjort om kejserliga enheter och metriska enheter, måste skiljetecken som att använda ett komma för att separera tusentals i stället för en period, liksom andra kulturella ämnen behandlas innan du kan ordentligt lokalisera ditt arbete.
Medan det här är en guide som behandlar förberedelser för att lokalisera ett plugin, är det fortfarande viktigt att hålla dessa ytterligare justeringar i åtanke.
Att lokalisera ditt plugin innebär att du måste komma fram till en textdomän, som håller var och en separerad från de som WordPress använder eller som andra plugins har definierat. Vad du än vill använda för en textdomän är nere till dig, men du vill välja något både unikt och förnuftigt, relaterat till vad din plugin handlar om.
Innan du kan fullt lokalisera din plugin, måste du göra det berätta för WordPress hur det kan hitta dina strängar. Om koden inte existerar måste du infoga något som följande rad i din kodning:
add_action( 'init', 'myFunction' );
Denna kod kommunicerar med WordPress för att berätta att den använder funktionen som heter myFunction när den laddas. Den här funktionen namnger sedan din textdomän till WordPress och lär den hur den kan ladda de lokala strängarna, vilket ska likna följande:
function myFunction() {load_plugin_textdomain( 'mytextdomain', 'wp-content/plugins' );}
WordPress-funktionen load_plugin_textdomain informerar WordPress om att det finns en textdomän som heter mytextdomain och de filer som har de lokala strängarna vila i serverns mapp wp-innehåll / plugin. (Naturligtvis, om du lägger in dina pluginfiler i en annan mapp och sökvägen måste du ersätta det med lämplig sökväg.)
Internationell bild via Shutterstock.
Efter initialiseringen måste du ändra de statiska strängarna till en funktion som tillåter WordPress att använda rätt lokaliserad version av den här strängen. Trots allt fungerar det inte bra att få WordPress att dra fel språk.
Den här funktionen erbjuder ett kort namn som gör det enkelt att internationalisera: Dubbelkanten funktionen _ (sträng, domän). Funktionen har två parametrar, den första är standardsträngen som plugin använder om det inte finns någon lokaliserad version tillgänglig. Den andra parametern är samma textdomän som du valde i koden tidigare.
Före detta steg kan din kod visas så här:
function addMyAdminPage() {add_options_page('A Page Title','A Menu Title',7, __FILE__, 'myAdminFunction' );}
Efter att ha lagt till koden kan det tyckas så här:
function addMyAdminPage() {add_options_page(__( 'A Page Title', 'textdomain' ),__( 'A Menu Title', 'textdomain' ),7, __FILE__, 'myAdminFunction' );}
Internationell bild via Shutterstock.
Med all förberedelse ur vägen är du äntligen redo för den faktiska processen att göra WordPress-plugin till flera språk.
Att skapa en lokalisering för ditt plugin kräver att du gör en .po-fil med ett namn som liknar ditt pluginfilnamn samt ISO 639 2-bokstavskoderna för varje land och språk. Till exempel, om din plugin kallades examenplansnamn och du ville lokalisera den till spanska (europeiska), det verkar som "examplename-es_ES.po".
Medan WordPress codex erbjuder verktyg som kan hjälpa till med lokalisering, är det ofta bättre att helt enkelt gå med .po-filen från ett plugin som utgångspunkt. .po-filer är gjorda av en enda rubrik och sedan översättningspar:
msgid "Options"msgstr "Opciones"
The msgid är standardsträngen som visas i den dubbla underbara funktionen du dikterar. Med .po-filen skapad kan du använda ett av de verktyg som WordPress erbjuder för att skapa en .mo-fil, vilket är den andra filen som WordPress kräver.
Ingen vet varje språk, så du vill utvidga dina resurser och låta andra människor hjälpa till att översätta till andra språk. Du måste emellertid genomgå ett speciellt förfarande för att skapa de nödvändiga filerna för att ge dina översättare eftersom du inte vill att dom ska få din källkod att oavsiktligt bryta.
Den fil du vill ge till översättare är en POT-fil, som liknar detta:
#: wp-admin/admin-header.php:49msgid "Options"msgstr ""
Det finns två sätt att generera den här filen. Om du har lagt in ditt plugin i förvaret, gå bara till administratörssidan och välj "Generera POT-fil". Den här filen är vad du skickar till översättare för att de ska lokalisera, men du kommer sannolikt att skicka ditt plugin med det, så översättare behöver inte ställa dig frågor om plugin.
Om du inte har ditt plugin i förvaret än, kan du besöka WordPress I18n verktygs katalog och använd makepot.php-skriptet på följande sätt:
php makepot.php wp-plugin the-plugin-directory
Tänk på att du måste installera ditt GNU Internationalization Utility-paket på din server innan du kör det här kommandot.
Internationell bild via Shutterstock.
Med alla dina lokala filer på plats är det dags att testa dem och se om det finns något du glömde. Testa din lokalisering innebär att ändra en enkel linje i din WordPress-konfiguration för att lura den för att tro att den ska använda en annan fil. Ändra filen wp-config och leta efter följande rad:
define ('WPLANG', 'en_US');
Om den här raden inte fanns tidigare, vill du dubbelkontrollera och se till att din installation fortfarande fungerar bra. Om så är fallet, återvänd till filen och ändra lands- och språkkoden. Med det tidigare exemplet skulle detta vara följande:
define ('WPLANG', 'es_ES');
Slutligen aktivera din plugin för att testa hur det ser ut. Kom ihåg att gå tillbaka till ditt ursprungliga standardspråk när du har testat.
Med alla de ändringar som WordPress gör över tiden kan ditt plugin inte vara fullt fungerande med efterföljande uppdateringar. Se till att du alltid tar dig tid att uppdatera ditt plugin när det är möjligt. Om du antar att du redan har det värd i WordPress Plugin Repository, kan du vidta några steg för att lägga till nya funktioner eller uppdatera korrigeringar till ditt plugin över tid. Det kan du göra så ofta som du behöver.
När du har uppdaterat ditt plugin och vill släppa den senaste versionen måste du hålla en checklista i åtanke:
Sammantaget finns det inte mycket annat att internationalisera din plugin på olika språk. Så länge du följer dessa steg noga kan du lokalisera din plugin på så många olika språk som du behöver.
Har du lokaliserat ett WordPress-plugin? Vilka språk önskar stöddes oftare? Låt oss veta i kommentarerna.