Cum să localizați și să traduceți un plugin WordPress - un ghid detaliat pentru dezvoltatorii de pluginuri
Publicat: 2020-01-20Atunci când dezvoltați un plugin, este întotdeauna o idee bună să îl pregătiți pentru traducere, deoarece ar putea ajunge, în plus, la publicul care nu utilizează engleza ca primă limbă. Dacă vă întrebați cât de importantă este o opțiune de traducere, puteți verifica depozitul și puteți vedea că fiecare plugin popular este disponibil pentru localizarea limbii. Veți găsi că această opțiune este disponibilă cu UpdraftPlus, MetaSlider, WP-Optimize, Contact Form 7 și WooCommerce, precum și multe altele. Acestea sunt unele dintre cele mai populare plugin-uri disponibile și sunt codificate într-un mod care permite oricui să le traducă cu ușurință în limba lor maternă.
Scopul acestui blog este de a demonstra cititorilor noștri cum pot codifica un plugin, astfel încât acesta să fie localizat și tradus în orice limbaj WordPress acceptat. De exemplu, dacă dorim să traducem un plugin în franceză, următorii pași vor permite traducerea pluginului și, de asemenea, îl vor pregăti pentru toate limbile WordPress acceptate.
Noțiuni de bază
Când creăm un plugin, ar trebui să ne asigurăm că încărcăm domeniul text al pluginului. WordPress oferă această funcție:
load_plugin_textdomain()
Acest cod va încărca șirurile traduse ale pluginului. Poate părea puțin confuz, dar continuați să citiți și vă vom explica cum funcționează în curând.
Mai întâi, să aruncăm o privire la cum să adăugați această funcție la codul nostru de plugin. În folderul plugin-ului, creați un director numit „limbi”. Apoi, adăugați codul de mai jos în fișierul principal al pluginului.
* Load plugin textdomain. */ function plugin_load_textdomain() { load_plugin_textdomain( 'udp', false, basename( dirname( __FILE__ ) ) . '/languages/' ); } add_action( 'init', 'plugin_load_textdomain' );
În codul de mai sus, păstrăm primul parametru (domeniu) ca „udp”. Ar trebui să păstrăm acest nume de domeniu conform numelui nostru al pluginului. Al doilea parametru este implicit false. Al treilea parametru este calea directorului nostru „limbi”. Acest cod menține fișierele noastre de traducere gata la inițializarea WordPress.
Utilizarea metodelor __() și _e().
Întrucât ne propunem să facem pluginul nostru disponibil în toate limbile, ar trebui să includem tot textul pluginului nostru fie:
Funcțiile __()
sau _e()
.
Este foarte ușor să folosești aceste metode. Ambele metode funcționează exact la fel, dar există o regulă pentru utilizarea ambelor.
În codul nostru de plugin, avem în mod normal două tipuri de text. Primul este împachetat direct în HTML, iar al doilea este afișat folosind funcția PHP echo. Mai jos sunt exemple de ambele tipuri:
Tipul 1
<h2>My Plugin Title</h2>
Tip 2
<?php echo „Setările mele de plugin”; ?>
Regula generală este că, dacă imprimați text folosind PHP echo, atunci ar trebui să includeți textul în următorul cod:
<code>__()</code>
Dacă este în HTML, atunci utilizați codul: <code>_e()</code>.
Codul de mai sus trebuie scris în felul următor:
<h2><?php _e('Titlul meu Plugin', 'udp'); ?></h2>
și
<?php echo __('Setările mele de plugin', 'udp'); ?>
După cum se poate vedea în exemplele de mai sus, al doilea parametru a fost scris ca „udp”, care este domeniul nostru de text al pluginului. Prin utilizarea acestui domeniu, ne va permite să traducem ulterior textul nostru în orice limbă. Acesta este modul în care alte plugin-uri își pregătesc traducerea pluginurilor.
Dacă doriți, puteți verifica pluginul nostru:
UpdraftPlus
Dacă căutați domeniul de text „updraftplus”, veți vedea cum textul pluginului nostru este împachetat în funcțiile __()
și _e()
.
Creați un exemplu de plugin
Următoarea etapă este să creăm un exemplu de plugin cu un text, astfel încât să ne putem testa traducerile. Mai întâi, creați un folder „udp” în directorul dvs. de pluginuri. În interiorul acestui folder creați fișierul: udp.php
și languages
folderului . Apoi, adăugați codul de mai jos în fișierul plugin.
udp.php
<?php /* Nume plugin: UDP Descriere: Acesta este un exemplu de plugin pentru a testa domeniul text al pluginului Autor: Colectivul de redacție Versiune: 1.0 Licență: GPLv3 sau o versiune ulterioară Domeniu text: udp Calea domeniului: /limbi */ if (!defined('ABSPATH')) die('Nu este permis accesul direct');/** * Încărcați domeniul text al pluginului. */ funcția udp_load_textdomain() { load_plugin_textdomain( 'udp', false, basename( dirname( __FILE__ ) ) . '/languages/' ); } add_action('init', 'udp_load_textdomain'); funcția udp_menu_page() { add_menu_page( __( „Pagină de setări UDP”, „udp” ), __( „Pagină de setări UDP”, „udp” ), 'gestionare_opțiuni', 'udp_setting_page', 'udp_setting_page', '', 6 ); } add_action('admin_menu', 'udp_menu_page'); funcția udp_setting_page() { ?> <h2><?php _e('Titlul meu Plugin', 'udp'); ?></h2> <?php }
Creați fișierele de traducere
Pentru a genera fișierele noastre de traducere, vom folosi următorul software de editare de traduceri:
POEDIT
Fișierele de traducere (.po și .mo) conțin șirul de tradus și șirul tradus. În timpul creării fișierului .po, trebuie să-l salvăm în format „{domain}-language code”. În acest exemplu, fișierul va fi udp-fr_FR.po .
Apoi, instalați software-ul POEDIT pe sistemul dumneavoastră. Acest software este disponibil pentru toate platformele și poate fi instalat pe Windows, Linux sau Mac.
Odată instalat, deschideți POEDIT și mergeți la File->New , unde vom introduce codul nostru de limbă în promptul ferestrei.
Faceți clic pe pictograma „Salvare”, după care se va deschide exploratorul de fișiere. Mergeți la directorul de limbi pentru pluginuri și salvați-l după cum urmează: udp-fr_FR.po .
Acum putem adăuga traducerea în franceză pentru textul pluginului nostru. Pentru a face acest lucru, faceți clic pe secțiunea „Extracte din surse”.
Aceasta va deschide o fereastră pop-up cu proprietățile catalogului. Acum trebuie să configuram următoarele trei file: Proprietăți traducere, Căi sursă și Cuvinte cheie sursă. În fila Proprietăți traducere, adăugați domeniul nostru „udp” ca nume de proiect. Căile sursă va fi folderul nostru de plugin și vom adăuga „__ și _e” în interiorul Cuvinte cheie sursă.
Dacă aveți mai multe foldere în interiorul pluginului, atunci va trebui să alegem fiecare director în mod individual.
După ce selectați folderul cu pluginuri, ar trebui să vedeți „.” în secțiunea Căi. Repetați același proces pentru alte foldere din directorul pluginului, dacă este necesar.
Sub Cuvinte cheie sursă, faceți clic pe pictograma + și adăugați „__” și „_e” ca cuvânt cheie și faceți clic pe butonul OK.
În fereastra următoare, sub Text sursă, veți avea toate șirurile disponibile pentru a le traduce din pluginul dvs. Alegeți șirul unul câte unul și adăugați traducerea dvs. în franceză la șir.
După ce ați adăugat toate traducerile, faceți clic pe pictograma Salvare. Acest lucru va salva automat toată traducerea șirurilor dvs. în fișierul udp-ft_FR.po
. Fișierul dvs. .po va conține acum următorul cod:
#: udp.php:24 udp.php:25 msgstr "Pagina de setare UDP" msgstr "Pagina de configurare UDP" #: udp.php:37 msgstr "Titlul pluginului meu" msgstr "Titre de mon plugin"
Testați traducerea pluginului nostru
Am finalizat acum sarcina de a crea fișiere .po și .mo pentru pluginul nostru. Acum este timpul să testăm pluginul nostru și să verificați traducerea în limba franceză.
Mai întâi, descărcați fișierul nostru de limbă de la următoarea adresă:
Depozitul de limbaj WordPress.
Pentru limba franceză, calea este următoarea:
Depozitul de limba franceză WordPress.fr_FR.mo
și fr_FR.po
Descărcați fișiere de pe acest link și stocați-le în directorul wp-content/languages . Creați folderul „limbi”, dacă nu există deja.
În continuare, trebuie să schimbăm limba implicită a instalării noastre WordPress. Deschideți fișierul wp-config.php
și adăugați limba după cum urmează:
define('WPLANG', 'fr_FR');
Acum, dacă accesați tabloul de bord, pluginul dvs. ar trebui să fie afișat în limba franceză.
In concluzie
Crearea unei traduceri localizate pentru pluginul dvs. WordPress poate părea puțin descurajantă și complicată la început. Cu toate acestea, potențialele beneficii de a oferi țări mari care nu vorbesc engleza, cum ar fi Brazilia, Franța și Germania, pluginul dvs. în limba lor maternă vă pot ajuta să vă deschideți pluginul către un public cu totul nou și apreciat. Deși poate părea multă muncă, recompensele ar putea fi considerabile.
Postarea Cum se localizează și se traduce un plugin WordPress – un ghid detaliat pentru dezvoltatorii de pluginuri a apărut mai întâi pe UpdraftPlus. UpdraftPlus – Plugin de backup, restaurare și migrare pentru WordPress.