مترجم
با استفاده از کلاس packages\base\translator که متد های آن برای راحتی استفاده به صورت ایستا و static نوشته است بدون تکرار کد ها، میتوانید نوشته های درون وبسایت را به صورت چندزبانه در آورید .برای این منظور نوشته های سایت در درون فایل های دیگری با فرم json نوشته میشوند. با استفاده از کلاس translator میتوان نوشته های فایل های ذخیره-نوشته را به صورت چند باره در میان کد ها استفاده کرد . با استفاده از کد زبان و یا کد کشور در آدرس ( به صورت جزعی از آدرس و یا به صورت یک پارامتر در آدرس) فریم ورک به صورت خودکار فایل ذخیره-نوشته متناظر با آن زبان و یا کشور را بارگزاری خواهد کرد . همچنین در تولید آدرس در صورتیکه از متد base\url استفاده کنید، این متد به صورت خودکار زبان پیشفرض را در آدرس ها قرار میدهد .
نمونه یک فایل ذخیره-نوشته
{
"author": {
"name" : "Jeyserver",
"website" : "https://www.jeyserver.com/"
},
"rtl": true,
"phrases":{
"title": "Jeyserver framwork docs",
"description": "powered by <a href=\"{url}\">Jeyserver</a> , open license framwork"
}
}
معرفی فایل های ذخیره-نوشته
فایل ذخیره-نوشته باید برای استفاده به فرم ورک معرفی شده و مشخص شوند هر فایل برای کدام کد زبان خواهد بود .
در صورتی که فایل ذخیره نوشته در رابط کاربری frontent استفاده شود ، معرفی در فایل theme.json و در غیر اینصورت در فایل package.json انجام خواهد شد .
نمونه فایل package.json
{
"permissions": "*",
"languages": {
"fa_IR": "langs/fa_IR.json"
}
}
نمونه فایل theme.json
{
"name": "frontname",
"title": "Site Frontend",
"version": "1.0.0",
"languages": {
"fa_IR": "langs/fa_IR.json"
}
}
نمونه معرفی فایل ذخیره-نوشته
"languages": {
"fa_IR" : "langs/fa_IR.json"
}
و در صورتی که بیش از یک زبان داشته باشید
"languages": {
"fa_IR" : "langs/fa_IR.json",
"en_US" : "langs/en_US.json"
}