Yii2 中把“Home”改成“首页”的方法 [ 2.0 版本 ]
以高级版为例,打开vendor\yiisoft\yii2\widgets\Breadcrumbs.php,找到run函数,在这个函数的地8行左右的位置,有
'label' => Yii::t('yii', 'Home'),
把它改成
'label' => Yii::t('yii', '首页'),
就ok了。
桃篮翁
注册时间:2014-10-23
最后登录:2019-12-12
在线时长:5小时16分
最后登录:2019-12-12
在线时长:5小时16分
- 粉丝9
- 金钱43
- 威望30
- 积分393
共 4 条评论
简单看了一下源代码:这样写就行了
<?= Breadcrumbs::widget([ 'homeLink'=>[ 'label' => '主 页', 'url' => Yii::$app->homeUrl ], 'links' => isset($this->params['breadcrumbs']) ? $this->params['breadcrumbs'] : [], ]) ?>
Yii::t
是 yii 的翻译函数,不应该像贴主那样修改,如果需要支持多语音,那么应该在相关配置加上'language' =>'zh-CN',
在 frontend/config/main-local.php 文件修改为:
if (!YII_ENV_TEST) { // configuration adjustments for 'dev' environment $config['bootstrap'][] = 'debug'; $config['modules']['debug'] = 'yii\debug\Module'; $config['bootstrap'][] = 'gii'; $config['modules']['gii'] = 'yii\gii\Module'; $config['language'] = 'zh-CN'; //增加此行,默认使用中文 }
或者到 frontend/config/main.php 修改
return [ 'id' => 'app-frontend', 'basePath' => dirname(__DIR__), 'bootstrap' => ['log'], 'controllerNamespace' => 'frontend\controllers', 'language' =>'zh-CN', //增加此行,默认使用中文 .... ]
其中
Yii::t('yii', 'Home')
函数将会到 vendor/yiisoft/yii2/messages/zh_CN/yii.php 去翻译“Home”对应的中文对,本来是用
Yii::t
来先读取多语言文档的,可以在多语言文档中设置'Home'=>'首页'
这样也行谢谢两位的指导,学习了。同时向看到此贴的朋友们表示道歉!
建议使用messages处理国际化,使代码更简洁。