Cara melokalkan dan menerjemahkan plugin WordPress – panduan mendalam untuk pengembang plugin

Diterbitkan: 2020-01-20

Saat mengembangkan plugin, selalu merupakan ide bagus untuk menyiapkan terjemahannya karena dapat juga menjangkau audiens yang tidak menggunakan bahasa Inggris sebagai bahasa pertama mereka. Jika Anda bertanya-tanya seberapa penting opsi terjemahan, Anda dapat memeriksa repositori dan melihat bahwa setiap plugin populer tersedia untuk pelokalan bahasa. Anda akan menemukan opsi ini tersedia dengan UpdraftPlus, MetaSlider, WP-Optimize, Contact Form 7 dan WooCommerce, serta banyak lagi. Ini adalah beberapa plugin paling populer yang tersedia dan dikodekan dengan cara yang memungkinkan siapa saja untuk menerjemahkannya dengan mudah ke dalam bahasa asli mereka.

Tujuan blog ini adalah untuk menunjukkan kepada pembaca kami bagaimana mereka dapat mengkodekan plugin sehingga akan dilokalkan dan diterjemahkan ke dalam bahasa WordPress yang didukung. Misalnya, jika kita ingin menerjemahkan plugin ke dalam bahasa Prancis, langkah-langkah berikut akan memungkinkan terjemahan plugin dan juga membuatnya siap untuk semua bahasa WordPress yang didukung.

Mulai

Saat membuat plugin, kita harus memastikan bahwa kita memuat domain teks plugin. WordPress menyediakan fungsi ini:

load_plugin_textdomain()

Kode ini akan memuat string terjemahan plugin. Ini mungkin tampak sedikit membingungkan, tetapi teruslah membaca dan kami akan segera menjelaskan cara kerjanya.

Pertama, mari kita lihat bagaimana cara menambahkan fungsi ini ke kode plugin kita. Di folder plugin Anda, buat direktori bernama 'bahasa'. Selanjutnya, tambahkan kode di bawah ini ke file utama plugin Anda.

 * Load plugin textdomain. */ function plugin_load_textdomain() { load_plugin_textdomain( 'udp', false, basename( dirname( __FILE__ ) ) . '/languages/' ); } add_action( 'init', 'plugin_load_textdomain' );

Dalam kode di atas, kami menyimpan parameter pertama (domain) sebagai 'udp'. Kita harus menjaga nama domain ini sesuai dengan nama plugin kita. Parameter kedua default ke false. Parameter ketiga adalah jalur direktori 'bahasa' kami. Kode ini membuat file terjemahan kami siap pada inisialisasi WordPress.

Penggunaan Metode __() dan _e()

Karena kami bertujuan untuk membuat plugin kami tersedia dalam semua bahasa, kami harus membungkus semua teks plugin kami di dalam:

__() atau _e() fungsi.

Sangat mudah untuk menggunakan metode ini. Kedua metode bekerja persis sama tetapi ada aturan untuk menggunakan keduanya.

Dalam kode plugin kami, kami biasanya memiliki dua jenis teks. Yang pertama dibungkus dalam HTML secara langsung dan yang kedua ditampilkan menggunakan fungsi gema PHP. Di bawah ini adalah contoh dari kedua jenis:

Tipe 1

 <h2>My Plugin Title</h2>

Tipe 2

 <?php echo 'Pengaturan Plugin Saya'; ?>

Aturan umumnya adalah jika Anda mencetak teks menggunakan gema PHP maka Anda harus membungkus teks dalam kode berikut:

<code>__()</code>

Jika dalam HTML maka gunakan kode: <code>_e()</code>.

Kode di atas harus ditulis dengan cara berikut:

 <h2><?php _e('Judul Plugin Saya', 'udp'); ?></h2>

dan

 <?php echo __('Pengaturan Plugin Saya', 'udp'); ?>

Seperti yang dapat dilihat pada contoh di atas, parameter kedua ditulis sebagai 'udp', yang merupakan domain teks plugin kami. Dengan menggunakan domain ini, nantinya akan memungkinkan kita untuk menerjemahkan teks kita ke dalam bahasa apapun. Ini adalah bagaimana plugin lain membuat terjemahan plugin mereka siap.

Jika mau, Anda dapat memeriksa plugin kami:

UpdraftPlus

Jika Anda mencari domain teks 'updraftplus', Anda akan melihat bagaimana teks plugin kami dibungkus di dalam fungsi __() dan _e() .

Buat Contoh Plugin

Tahap selanjutnya adalah membuat plugin sampel dengan beberapa teks sehingga kami dapat menguji terjemahan kami. Pertama, buat folder 'udp' di direktori plugin Anda. Di dalam folder ini buat file: udp.php dan folder languages . Selanjutnya, tambahkan kode di bawah ini ke file plugin.

udp.php

 <?php
/*
Nama Plugin: UDP
Deskripsi: Ini adalah contoh plugin untuk menguji domain teks plugin
Penulis: Staf Redaksi
Versi: 1.0
Lisensi: GPLv3 atau lebih baru
Domain Teks: udp
Jalur Domain: /languages
*/

if (!defined('ABSPATH')) die('Tidak ada akses langsung yang diizinkan');/**
* Muat domain teks plugin.
*/
fungsi udp_load_textdomain() {
load_plugin_textdomain( 'udp', false, basename( dirname( __FILE__ ) ) . '/languages/' );
}
add_action( 'init', 'udp_load_textdomain' ); 

fungsi udp_menu_page() {
tambahkan_menu_halaman(
__( 'Halaman Pengaturan UDP', 'udp' ),
__( 'Halaman Pengaturan UDP', 'udp' ),
'kelola_opsi',
'udp_setting_page',
'udp_setting_page',
'',
6
);
}
add_action('admin_menu', 'udp_menu_page');

fungsi udp_setting_page() {
?>
<h2><?php _e('Judul Plugin Saya', 'udp'); ?></h2>
<?php
}

Buat File Terjemahan

Untuk menghasilkan file terjemahan kami, kami akan menggunakan perangkat lunak editor terjemahan berikut:

POEDIT

File terjemahan (.po dan .mo) berisi string yang akan diterjemahkan dan string yang diterjemahkan. Saat membuat file .po, kita perlu menyimpannya dalam format '{domain}-kode bahasa'. Dalam contoh ini, file akan menjadi udp-fr_FR.po .

Selanjutnya, instal perangkat lunak POEDIT pada sistem Anda. Perangkat lunak ini tersedia untuk semua platform dan dapat diinstal pada Windows, Linux atau Mac.

Setelah terinstal, buka POEDIT dan buka File->New , di mana kita akan memasukkan kode bahasa kita di jendela prompt.

Klik ikon 'Simpan', setelah itu, file explorer akan terbuka. Buka direktori bahasa plugin dan simpan sebagai berikut: udp-fr_FR.po .

Sekarang kami dapat menambahkan terjemahan bahasa Prancis untuk teks plugin kami. Untuk melakukannya, klik bagian 'Ekstrak dari sumber'.

Ini akan membuka popup properti katalog. Kita sekarang perlu mengonfigurasi tiga tab berikut: Properti Terjemahan, Jalur Sumber, dan Kata Kunci Sumber. Di tab Translation Properties, tambahkan domain kami 'udp' sebagai nama proyek. Jalur Sumber akan menjadi folder plugin kami dan kami akan menambahkan '__ dan _e' di dalam Kata Kunci Sumber.

Jika Anda memiliki beberapa folder di dalam plugin, maka kita harus memilih setiap direktori satu per satu.

Setelah memilih folder plugin, Anda akan melihat '.' di bagian Paths. Ulangi proses yang sama untuk folder lain di dalam direktori plugin Anda jika perlu.

Di bawah Kata Kunci Sumber, klik ikon + dan tambahkan '__' dan '_e' sebagai kata kunci dan klik tombol OK.

Di jendela berikutnya, di bawah teks Sumber, Anda akan memiliki semua string yang tersedia untuk diterjemahkan dari plugin Anda. Pilih string satu per satu dan tambahkan terjemahan bahasa Prancis Anda ke string.

Setelah Anda menambahkan semua terjemahan, klik ikon Simpan. Ini akan secara otomatis menyimpan semua terjemahan string Anda di file udp-ft_FR.po Anda. File .po Anda sekarang akan berisi kode berikut:

 #: udp.php:24 udp.php:25
msgstr "Halaman Pengaturan UDP"
msgstr "Halaman de konfigurasi UDP"

#: udp.php:37
msgstr "Judul Plugin Saya"
msgstr "Plugin titer de mon"

Uji Terjemahan Plugin Kami

Kami sekarang telah menyelesaikan tugas membuat file .po dan .mo untuk plugin kami. Sekarang saatnya untuk menguji plugin kami dan memeriksa terjemahan bahasa Prancis.

Pertama, unduh file bahasa kami dari alamat berikut:

Repositori Bahasa WordPress.

Untuk bahasa Prancis, jalurnya adalah sebagai berikut:

Repositori Bahasa WordPress Prancis.fr_FR.mo dan fr_FR.po

Unduh file dari tautan ini dan simpan di direktori wp-content/languages . Buat folder 'bahasa', jika belum ada.

Selanjutnya, kita perlu mengubah bahasa default instalasi WordPress kita. Buka wp-config.php dan tambahkan bahasa sebagai berikut:

 define('WPLANG', 'fr_FR');

Sekarang jika Anda pergi ke dasbor, plugin Anda akan ditampilkan dalam bahasa Prancis.

Kesimpulannya

Membuat terjemahan lokal untuk plugin WordPress Anda mungkin tampak sedikit menakutkan dan rumit pada awalnya. Namun manfaat potensial dari menawarkan negara-negara besar yang tidak berbahasa Inggris seperti Brasil, Prancis, dan Jerman plugin Anda dalam bahasa asli mereka dapat membantu membuka plugin Anda ke audiens yang benar-benar baru dan menghargai. Meskipun mungkin tampak seperti banyak pekerjaan, imbalannya bisa sangat besar.

Posting Cara melokalkan dan menerjemahkan plugin WordPress – panduan mendalam untuk pengembang plugin muncul pertama kali di UpdraftPlus. UpdraftPlus – Cadangkan, pulihkan, dan plugin migrasi untuk WordPress.