Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/funson86/yii2-setting
Common Settings at backend and could use at any place
https://github.com/funson86/yii2-setting
Last synced: 2 months ago
JSON representation
Common Settings at backend and could use at any place
- Host: GitHub
- URL: https://github.com/funson86/yii2-setting
- Owner: funson86
- Created: 2014-12-10T00:37:53.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2015-02-06T01:46:54.000Z (almost 10 years ago)
- Last Synced: 2024-09-17T10:44:36.665Z (4 months ago)
- Language: PHP
- Homepage:
- Size: 188 KB
- Stars: 3
- Watchers: 2
- Forks: 1
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-yii2 - yii2-setting
README
Yii2 Setting
=========
Yii2 Setting for other application, especially for [Yii2 Adminlte](https://github.com/funson86/yii2-adminlte)Installation
------------The preferred way to install this extension is through [composer](http://getcomposer.org/download/).
Either run
```
php composer.phar require funson86/yii2-setting "*"
```or add
```
"funson86/yii2-setting": "*"
```to the require section of your `composer.json` file.
Usage
-----Once the extension is installed, simply use it in your code by :
### Migration
Migration run
```php
yii migrate --migrationPath=@funson86/setting/migrations
```### Config /common/config/main.php to use Yii::$app->setting
```php
'components' => [
'setting' => [
'class' => 'funson86\setting\Setting',
],
],
```### Config backend modules in backend/config/main.php to manage settings
```php
'modules' => [
'setting' => [
'class' => 'funson86\setting\Module',
'controllerNamespace' => 'funson86\setting\controllers'
],
],
```### Config at backend
backend : http://you-domain/backend/web/setting### Add Your Setting
Setting support 3 type of setting: text, password, select.
You could add your setting by migration or insert to table `setting` manually.
```php
INSERT INTO `setting` (`id`, `parent_id`, `code`, `type`, `store_range`, `store_dir`, `value`, `sort_order`) VALUES
(11, 0, 'info', 'group', '', '', '', '50'),
(21, 0, 'basic', 'group', '', '', '', '50'),
(31, 0, 'smtp', 'group', '', '', '', '50'),
(1111, 11, 'siteName', 'text', '', '', 'Your Site', '50'),
(1112, 11, 'siteTitle', 'text', '', '', 'Your Site Title', '50'),
(1113, 11, 'siteKeyword', 'text', '', '', 'Your Site Keyword', '50'),
(2111, 21, 'timezone', 'select', '-12,-11,-10,-9,-8,-7,-6,-5,-4,-3.5,-3,-2,-1,0,1,2,3,3.5,4,4.5,5,5.5,5.75,6,6.5,7,8,9,9.5,10,11,12', '', '8', '50'),
(2112, 21, 'commentCheck', 'select', '0,1', '', '1', '50'),
(3111, 31, 'smtpHost', 'text', '', '', 'localhost', '50'),
(3112, 31, 'smtpPort', 'text', '', '', '', '50'),
(3113, 31, 'smtpUser', 'text', '', '', '', '50'),
(3114, 31, 'smtpPassword', 'password', '', '', '', '50'),
(3115, 31, 'smtpMail', 'text', '', '', '', '50');
```### Use Your Setting
Once you set the value at the backend. Simply access your setting by the following code:```php
echo Yii::$app->setting->get('siteName');
```Preview:
-------
![Yii2-Setting](yii2-setting-preview.png)