Doplňky aplikace WordPress umožňují snadné úpravy a vylepšení vašeho blogu přinášením nových funkcí, které nejsou v základním kódu k dispozici jinak.

Použití pluginů funguje efektivněji než pokoušet se modifikovat celkové programování jádra, které tvoří WordPress. Definované jako program nebo sada funkcí napsaných v PHP, pluginy přidávají specifické funkce, které lze snadno integrovat do blogu prostřednictvím rozhraní WordPress API.

Pokud jste napsali plugin pro WordPress, můžete jej zpřístupnit překladem do jiného jazyka. Toto je známé jako internacionalizace.

Internacionalizace vs. lokalizace

Předtím, než můžete rozšířit svůj plugin, musíte vědět, co to znamená. Také známý jako i18n, to znamená modifikaci pluginu tak, aby ostatní kultury, které mluví jinými jazyky, mohly snadno použít váš plugin.

Lokalizace naopak je vlastním procesem modifikace.

Tam je více k internacionalizaci než jen překlady rozhraní. Například před tím, než můžete správně lokalizovat svou práci, je třeba předložit předpoklady, které jste učinili o císařských jednotkách a metrických jednotkách, interpunkci, jako například použití čárky pro oddělení tisíců namísto období, stejně jako další kulturní témata.

Zatímco toto je průvodce, který se zabývá přípravou na lokalizaci pluginu, je stále důležité mít na paměti tato další nastavení.

Domény a inicializace

Umístění pluginu znamená, že potřebujete přijít s textovou doménou, přičemž každá z nich je oddělena od těch, které aplikace WordPress používá nebo které byly definovány jinými pluginy. Cokoliv chcete použít pro textovou doménu, je na vás, ale budete chtít vybrat něco jedinečného a rozumného, ​​souvisejícího s tím, o co je váš plugin.

Než budete moci plugin plně nainstalovat, musíte to říct WordPress, jak může najít vaše řetězce. Pokud kód ještě neexistuje, budete muset do svého kódování vložit něco jako následující řádek:

add_action( 'init', 'myFunction' );

Tento kód komunikuje s aplikací WordPress a řekne mu, že po načtení použije funkci nazvanou myFunction. Tato funkce pak název své textové domény WordPress a učí, jak může načíst lokalizované řetězce, které by měly vypadat podobně jako:

function myFunction() {load_plugin_textdomain( 'mytextdomain', 'wp-content/plugins' );}

Funkce WordPress load_plugin_textdomain informuje WordPress, že existuje textová doména nazvaná mytextdomain a soubory, které mají lokalizované řetězce, zůstávají ve složce serveru wp-content / plugin. (Přirozeně, pokud přidáte soubory pluginu do jiné složky a cesty, musíte je nahradit příslušnou cestou.)

Flags

Mezinárodní obraz přes Shutterstock.

Příprava strun

Po inicializaci budete muset změnit statické řetězce na funkci, která umožňuje aplikaci WordPress používat správnou lokalizovanou verzi tohoto řetězce. Koneckonců, nefunguje dobře, aby aplikace WordPress vytáhla nesprávný jazyk.

Tato funkce nabízí krátké jméno, které usnadňuje internacionalizaci: funkce dvojitého podstavce _ (řetězec, doména). Funkce má dva parametry, přičemž první je výchozí řetězec, který plugin používá, pokud není k dispozici lokalizovaná verze. Druhým parametrem je stejná textová doména, kterou jste v předchozím kódu vybrali.

Před tímto krokem může váš kód vypadat takto:

function addMyAdminPage() {add_options_page('A Page Title','A Menu Title',7, __FILE__, 'myAdminFunction' );}

Po přidání kódu může vypadat takto:

function addMyAdminPage() {add_options_page(__( 'A Page Title', 'textdomain' ),__( 'A Menu Title', 'textdomain' ),7, __FILE__, 'myAdminFunction' );}
Flags

Mezinárodní obraz přes Shutterstock.

Lokalizace

S veškerou přípravou z cesty jste konečně připraveni na skutečný proces obrábění pluginu WordPress do několika jazyků.

Vytvoření lokalizace pro váš plugin vyžaduje vytvoření souboru .po se jménem podobným názvu souboru pluginu, stejně jako kódy dvou písmen ISO 639 pro každou zemi a jazyk. Například pokud byl váš plugin nazván příkladem a chcete jej lokalizovat do španělštiny (evropské), vypadá to jako "examplename-es_ES.po".

Zatímco WordPress codex nabízí nástroje, které mohou pomoci s lokalizací, je často lepší jednoduše jít s výchozím bodem. .po soubory jsou vytvořeny z jediného záhlaví a pak páry překladu:

msgid "Options"msgstr "Opciones"

Msgid je standardní řetězec, který se zobrazuje ve funkci dvojitého podřízeného panelu, který diktujete. Pomocí vytvořeného souboru .po můžete použít jeden z nástrojů nabídky WordPress k vytvoření souboru .mo, který je dalším souborem, který aplikace WordPress vyžaduje.

Umožnit ostatním překladatelům pomoc

Nikdo neví každý jazyk, takže budete chtít rozšířit své zdroje a nechat ostatní lidi pomoci překládat do jiných jazyků. Budete však muset podstoupit speciální proceduru, abyste vytvořili potřebné soubory, které chcete dát překladatelům, protože nechcete, aby měli zdrojový kód náhodou zlomený.

Soubor, který chcete dát překladatelům, je soubor POT, který vypadá podobně jako:

#: wp-admin/admin-header.php:49msgid "Options"msgstr ""

Existují dva způsoby generování tohoto souboru. Pokud jste svůj plugin vložili do úložiště, přejděte na administrátorskou stránku a vyberte možnost "Generovat soubor POT". Tento soubor je odeslán překladatelům, aby je mohli lokalizovat, ačkoli budete pravděpodobně chtít odeslat plugin s ním, takže překladatelé nemusíte klást otázky ohledně pluginu.

Pokud ještě nemáte plugin v úložišti, můžete ho navštívit Adresář nástrojů WordPress I18n a použijte skript makepot.php následujícím způsobem:

php makepot.php wp-plugin the-plugin-directory

Nezapomeňte, že před spuštěním tohoto příkazu musíte na svém serveru nainstalovat balík nástrojů pro internacionalizaci GNU.

Flags

Mezinárodní obraz přes Shutterstock.

Testování

Se všemi lokalizovanými soubory na místě je čas vyzkoušet je a zjistit, jestli je něco, na co jste zapomněli. Testování vaší lokalizace znamená změnu jednoduché čáry v konfiguraci vašeho WordPressu, aby jste ji mohli napodobit do myšlení, že by měl použít jiný soubor. Změňte soubor wp-config a vyhledejte následující řádek:

define ('WPLANG', 'en_US');

Pokud tento řádek dříve neexistoval, budete chtít dvakrát zkontrolovat a zjistit, že instalace stále funguje dobře. Pokud ano, vraťte se do souboru a upravte kód země a jazyka. S předchozím příkladem by bylo toto:

define ('WPLANG', 'es_ES');

Nakonec povolte pluginu, aby vyzkoušel, jak vypadá. Nezapomeňte se po dokončení testování vrátit zpět do původního výchozího jazyka.

Aktualizace pluginu

Se všemi změnami, které aplikace WordPress dělá v průběhu času, nemusí být váš plugin plně funkční s následnými aktualizacemi. Ujistěte se, že vždy máte čas na aktualizaci pluginu, kdykoli je to možné. Za předpokladu, že jste ji již hostovali v úložišti Plugin WordPress, můžete provést některé kroky, abyste přidali nové funkce nebo aktualizovali záplaty do pluginu v průběhu času. Můžete to udělat tak často, jak potřebujete.

Jakmile dokončíte aktualizaci pluginu a chcete uvolnit nejnovější verzi, je třeba mít na paměti seznam kontrol:

  • Otestujte plugin a zajistěte, aby nejnovější verze fungovala správně. Ujistěte se, že máte na paměti všechny různé verze aplikace WordPress a vyzkoušejte je s každou verzí, jak je to možné. Nepoužívejte pouze testování nových funkcí, protože byste mohli náhodou přerušit starší funkce.
  • Přejděte do složky kufru a upravte komentář hlavičky v hlavním souboru PHP, abyste mohli aktualizovat číslo verze. Ujistěte se, že také změníte číslo verze v souboru readme.txt ve složce kmenu v poli stabilní značky.
  • Je vždy moudré vytvořit další podsekci oblasti změn v souboru readme.txt, abyste mohli stručně popsat, co je nového v poslední verzi oproti předchozí. Cokoliv jste zde vložili, budou přidány do karty protokolu změn na stránce pluginu.
  • Ujistěte se, že vytvoříte novou značku SVN jako součást kmene.
  • Několik minut nechte systém zaregistrovat nové změny a pak přejděte na stránku pluginu a na blog, který má nainstalovaný nový plugin, abyste ověřili, zda je vše správně aktualizováno. Mějte na paměti, že tyto kontroly aktualizací mohou být ukládány do mezipaměti, takže může být nutné chvíli počkat, až se budou moci plně aktualizovat.

Celkově není nic jiného, ​​jak internacionalizovat svůj plugin do různých jazyků. Pokud budete pečlivě dodržovat tyto kroky, můžete svůj plugin lokalizovat do mnoha různých jazyků, kolik potřebujete.

Máte lokalizovaný plugin WordPress? Jaké jazyky si přejí, byly podporovány častěji? Dejte nám vědět v komentářích.