مترجم
با استفاده از کلاس 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"
}