Settings Manager for Yii2 with the possibility of translating values.
Via Composer.
php composer.phar require --prefer-dist andrylik/yii2-settings "*"
Database Migrations
Before usage this extension, we'll also need to prepare the database.
php yii migrate --migrationPath=@vendor/andrylik/yii2-settings/migrations
Module Setup
Configure "Yii2 Settings Extension" module in backend/config/main.php
:
'modules' => [
'settings' => [
'class' => 'andrylik\settings\Module',
],
],
If you need to translate the values to other languages
add parameters in common/config/params.php
return [
// ...
'languages' => ['uk', 'ru', 'en'], //languages to translate
'defaultLanguage' => 'uk' //default app language
];
Also specify the language of the application common/config/main.php
return [
// ...
'language' => 'uk',
//..
];
Component Setup
Configure Settings Component common/config/main.php
'components' => [
'cache' => [
'class' => \yii\caching\FileCache::class,
'cachePath' => '@frontend/runtime/cache'
],
'settings' => [
'class' => 'andrylik\settings\components\Settings',
],
],
Go to http://backend.yourdomain.com/settings
for managing your settings
Use the settings in your application
$settings = Yii::$app->settings;
$value = $settings->get('section', 'key');