function untuk menampilkan text di public area supaya bisa menjadi multi languages jika di admin menu: 'Control Panel / Language / Language Reference' terdapat lebih dari satu bahasa
includes/function/language.php
Menentukan Text Multi Bahasa Pada Halaman Publik
Untuk menampilkan text yang bisa diubah menjadi multi bahasa anda bisa menggunakan function lang dengan cara echo lang('text yang dimunculkan');
dengan contoh script di atas, maka "text yang akan dimunculkan" akan menjadi keyword yang akan masuk ke dalam database table `bbc_lang_code` jika pada admin panel "Control Panel / Configuration" tab "Rules" field "Language Save" diaktifkan akan menjadikan text 'text yang akan dimunculkan' juga menjadi text hasil translate untuk bahasa default di admin panel "Control Panel / Language" dimana bisa anda rubah dan sesuaikan dengan kebutuhan anda.
Apabila pada admin panel "Control Panel / Language / Language Reference" terdapat bahasa lebih dari satu, maka anda harus mentranslate text 'text yang akan dimunculkan' ke dalam setiap bahasa yang tersedia pada panel tersebut.
Dan jika di admin panel "Control Panel / Configuration" tab "Rules" field "Language Save" posisi tidak aktif, maka anda harus menambah secara manual text 'text yang dimunculkan' ke admin panel pada menu "Control Panel / Language" lalu mentranslate nya sesuai dengan bahasa yang tersedia.
Adapun function function yang perlu anda pelajari bisa anda buka di sini
mengambil array language yang tersedia di database
get_lang();
function ini hampir mirip dengan lang_assoc hanya saja hasil output berupa array dengan value string dari database table bbc_lang`` field `code`
men-translate string yang di masukkan pada argument ke 1 dengan menggunakan table database `bbc_lang_text`
lang($txt[, $var1='', $var2=''...]);
$txt: String text yang akan di translate
$var1: String yang akan menggantikan karakter "%s" pertama pada $txt
$var2: String yang akan menggantikan karakter "%s" kedua pada $txt
... dst
untuk $var1, $var2, $var3.. adalah opsional bisa anda gunakan jika dalam $txt terkandung karakter "%s" dan akan diganti sesuai urutan dari $varX
apabila pada $txt terdapat karakter "%s" dan anda tidak menambahkan argument selanjut nya. maka karakter tersebut tidak akan diubah atau tetap menjadi "%s"
mengambil data yang ada pada database table `bbc_lang`
lang_assoc($id = 'id');
$id: Integer ID dari database table `bbc_lang`
Contoh penggunaan
$r = lang_assoc();
pr($r);
akan menghasil kan
Array
(
[1] => Array
(
[id] => 1
[code] => id
[title] => Indonesia
)
)
jika di database terdapat lebih dari satu bahasa maka output akan menampilkan array lebih dari satu dengan field `id` sebagai index key nya
Dan jika variable $id diisi makan akan mengambil array sesuai dengan index key nya yaitu field `id` tersebut
untuk mempermudah penulisan dalam query MySQL yang menggunakan fitur multilanguage
lang_sql($table, $id = '');
$table: String table yang ingin dimasukkan ke query MySQL
$id: String nama field pada [$table]_text sebagai penyambung language
Semisal field penyambung table table `bbc_content_cat` ke `bbc_content_cat_text` adalah field `cat_id` maka anda bisa menggunakan nya sebagai berikut $table = lang_sql('bbc_content_cat', 'cat_id'); dimana variable $table akan menghasilkan:
`bbc_content_cat` AS a LEFT JOIN `bbc_content_cat_text` AS t ON (t.`cat_id`=a.`id` AND t.`lang_id`=1)
sedangkan apabila field penyambung table adalah [namatable]_id maka anda tidak perlu mengisikan apapun pada argument ke 2 pada function ini, contoh echo lang_sql('imageslider'); dimana akan menghasilkan output:
`imageslider` AS a LEFT JOIN `imageslider_text` AS t ON (t.`imageslider_id`=a.`id` AND t.`lang_id`=1)