Pada WPFrame untuk mendapatkan bahasa yang sedang digunakan oleh pengguna saat mengakses frontend page, WPFrame mendapatkan informasi bahasa yang digunakan oleh pengguna menggunakan fungsi dari WordPress yaitu get_locale(). Fungsi ini akan mengeluarkan kode bahasa dengan disertai dengan kode negara contohnya seperti en_US dan id_ID.
Mendaftarkan Translasi Konten Bahasa
File konfigurasi bahasa pada WPFrame terdapat pada direktori App/Lang. Dalam direktori tersebut, Anda dapat membuat direktori baru sesuai dengan penamaan dari hasil fungsi get_locale(). Contohnya jika get_locale() menghasilkan kode bahasa dan negara id_ID, maka nama direktori dapat disamakan dengan hasil tersebut.
Selanjutnya didalam direktori bahasa yang Anda pilih, misalkan App/Lang/id_ID/Anda perlu membuat sebuah file untuk mendaftarkan key dan value untuk bahasa yang akan di tampung kedalam file tersebut. Penamaan pada file bahasa mengikuti nama dari direktori terkait seperti contoh App/Lang/id_ID/id_ID.php.
Untuk mendaftarkan bahasa terkait, Anda perlu mendaftarkannya kedalam variabel $lang_register. Contoh cara untuk mendaftarkan bahasa kedalam variabel:
Contoh untuk bahasa id_ID:
<?php
/**
* Register Language Indonesia id_ID
*/
$lang_register = [
'page_not_found' => 'Halaman tidak ditemukan!',
'welcome_msg' => 'halo dunia',
'new_lang_key' => 'String',
];Contoh untuk bahasa en_US:
<?php
/**
* Register Language English en_US
*/
$lang_register = [
'page_not_found' => 'Page Not Found!',
'welcome_msg' => 'hello world',
'new_lang_key' => 'String',
];Menggunakan Bahasa yang Telah Didaftarkan
Untuk memanggil konten bahasa sesuai dengan yang dihasilkan oleh fungsi get_locale(), Anda dapat menggunakan fungsi __wpfp_lang('lang_key') untuk mendapatkan hasil sesuai bahasa yang digunakan. Penggunaan fungsi dapat Anda gunakan melalui Blade View, WPFrame View ataupun melalui Controller.
<?php
namespace WPFP\App\Fcontrollers;
use WPFP\Boot\System\Fcontroller;
class Controller_name extends Fcontroller
{
public function __construct()
{
// Add Something
}
public function index(){
echo __wpfp_lang('lang_key');
}
// Add Something
}<!--- Blade View -->
{{ __wpfp_lang('welcome_msg') }}
<!--- WPFrame View -->
<?= __wpfp_lang('welcome_msg') ?>