Skip to content

heartshare/yii2-seo-toolbar

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

Yii2 Seo Toolbar

This toolbar allows to easily configure title of page, meta tags or Open Graph tags on your website. It doesn't require any administration panel, it works right in the place (as Yii2 Debug Toolbar).

Installation

$ composer require understeam/yii2-seo-toolbar:0.1 --prefer-dist

Usage

At first, add toolbar to modules configuration and add it into application bootstrap:

...
'bootstrap' => ['seoToolbar'],
'modules' => [
    'seoToolbar' => [
        'class' => 'understeam\seotoolbar\Module',
        'permission' => 'seo', // permission to check
        'allowedIPs' => ['*'],
    ],
],
...

It is strongly recommended to use name seoToobar because of it is hardcoded (yet).

Access control

At this step toolbar should appear if you are logged in and you have permission seo. Basically, module checks permissions with this method:

Yii::$app->user->can('seo');

So, if you are not using RBAC and access checks you can make toolbar visible for any logged in user:

...
'bootstrap' => ['seoToolbar'],
'modules' => [
    'seoToolbar' => [
        'class' => 'understeam\seotoolbar\Module',
        'permission' => '@', // allow to any logged in user
        'allowedIPs' => ['*'],
    ],
],
...

Also, you may want to show toolbar ALL users and check permissions via IP address:

...
'bootstrap' => ['seoToolbar'],
'modules' => [
    'seoToolbar' => [
        'class' => 'understeam\seotoolbar\Module',
        'permission' => null, // allow to any logged in user
        'allowedIPs' => ['127.0.0.1', '192.168.0.1'],
    ],
],
...

Url patterns and model attributes

There is possibility to use a star (*) symbol to transform URL to regular expression:

Screenshot

Using SeoEntity behavior

Use SeoEntity class as a behavior for your models which attributes you want to use as a parameters in seo toolbar:

    public function behaviors()
    {
        return ArrayHelper::merge(parent::behaviors(), [
            'seo' => [
                'class' => 'understeam\seotoolbar\behaviors\SeoEntity',
                'attributes' => [
                    'name',
                    'slug',
                    'description'
                ],
            ],
        ]);
    }

Screenshot

About

Yii2 SEO toolbar

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • CSS 62.6%
  • PHP 34.8%
  • JavaScript 2.6%