基于视图实现的多语言支持,支持手工录入或自动翻译成多种语言文本,基于页面句子在展示前对文本进行替换!根据客户端语言环境自动切换语言。
基本信息:
插件名称:多语言管理
插件标识:Translation
功能描述:
支持基于页面的多语言替换
支持自动识别客户端语言
后台可管理支持语言
支持全自动机翻(阿里机翻、腾讯机翻)
使用方法:
1 在需要多语言支持的页面控制器添加use TranslationFetch
// 导入trait
use plugins\translation\server\TranslationFetch;
class ArticleController extends HomeBaseController
{
// 使用trait
use TranslationFetch;
public function index(){}
}
注:TranslationFetch不会破坏原程序,只是改写原来的fetch输出方法,在输出之前把页面修改为当前选择的语言。
如果不想使用trait,也可以手动在控制器把fetch返回的数据交给translation_page_main钩子处理,如:hook('translation_page_main', $content);
需要自动机翻时,配置阿里或腾讯机翻的accessKeyId:
管理语言支持:
管理翻译文本:
前台页面展示多语言切换按钮,提供bootstrap风格的语言标签:
<select-language/> // 在需要展示切换按钮的地方输入以上标签即可 // 需要自定义切换按钮,可以在模板中通过{:selectLanguage()} 获取到当前语言和支持语言列表
效果:
支持版本:
5.1+
6.0+
ThinkCMF模板插件交流群:550851374 ,领取阿里云1000通用代金券