namespace sirgalas\menu;
class Module extends \yii\base\Module
{
public function registerTranslations()
{
Yii::$app->i18n->translations['modules/users/*'] = [
'class' => 'yii\i18n\PhpMessageSource',
'sourceLanguage' => 'ru-Ru',
'basePath' => 'sirgalas/menu/messages',
];
}
public static function t($category, $message, $params = [], $language = null)
{
return Yii::t($category, $message, $params, $language);
}
<?= Module::t('translit','Menu setup'); ?>
получаю 'Menu setup'
почему? namespace app\modules\main;
//use Yii;
use yii\base\BootstrapInterface;
class MainBootstrap implements BootstrapInterface
{
public function bootstrap($app)
{
$app->i18n->translations['modules/main/*'] = [
'class' => 'yii\i18n\PhpMessageSource',
'forceTranslation' => true,
'basePath' => '@app/modules/main/messages',
'fileMap' => [
'modules/main/module' => 'module.php'
]
];
}
}
namespace app\modules\main;
use Yii;
/**
* main module definition class
*/
class MainModule extends \yii\base\Module
{
/**
* @inheritdoc
*/
public $controllerNamespace = 'app\modules\main\controllers';
public static function t($category, $message, $params = [], $language = null)
{
return Yii::t('modules/main/' . $category, $message, $params, $language);
}
}
'app\modules\main\MainBootstrap',
public function registerTranslations()
{
Yii::$app->i18n->translations['translit'] = [
'class' => 'yii\i18n\PhpMessageSource',
'sourceLanguage' => 'en-US',
'basePath' => '@vendor/sirgalas/yii2-wordperss-menu/messages',
];
}
Module::t('translit','Menu create')
то есть должно было совпадать translit
вот здесь Yii::$app->i18n->translations['translit']
и вот здесь Module::t('translit','Menu create')
да и не забыть указать адрес полный с vendor
@vendor/sirgalas/yii2-wordperss-menu/messages