Skip to content

The module provides an ability to add SEO fields to Model.

License

Notifications You must be signed in to change notification settings

koftikes/yii2-seo

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Yii2-Seo

The module provides an ability to add SEO fields to Model. Fields: title, keywords, description.

Installation

The preferred way to install this extension is through composer.

Either run

composer require sbs/yii2-seo

or add to the require section of your application's composer.json file next line

"sbs/yii2-seo": "^1.0"

and run

composer update

Migrations

For add table, to DataBase, you can run next command

php yii migrate/up --migrationPath=vendor/sbs/yii2-seo/src/migrations

or you can configure your application's config\console.php

This method more preferable because you can run all standard migrations commands.

'controllerMap' => [
    'migrate' => [
        'class' => MigrateController::class,
        'migrationPath' => [
            '@console/migrations',
            '@vendor/sbs/yii2-seo/src/migrations',
        ],
        //...
    ],
    //...
]

Use with Model

You need to add behaviors to model:

use sbs\behaviors\SeoBehavior;

function behaviors()
{
    return [
    //...
        SeoBehavior::class,
    //...
    ];
}

Now all fields will be available by $model->seo.

For add/edit fields in model form view use next widget:

//...
use sbs\widgets\SeoForm;
//...
?>
<div>
    <?php $form = ActiveForm::begin(); ?>
    //...
    <?= SeoForm::widget(['model' => $model, 'form' => $form]); ?>
    //...
    <div class="form-group">
        <?= Html::submitButton($model->isNewRecord ? 'Create': 'Update'); ?>
    </div>
    <?php ActiveForm::end(); ?>
</div>

For display this field on page view use next widget:

use sbs\widgets\SeoTags;
//...
SeoTags::widget(['seo' => $model->seo]);
// ...

Use without Model

Also, you can use the SeoTags widget without model and DataBase. For example, if you need to add SEO to some static page and no need for editing this information in the admin panel:

use sbs\widgets\SeoTags;
//...
SeoTags::widget(['title' => 'title', 'keywords' => 'keyword 1, keyword 2', 'description' => 'your description']);
// ...

About

The module provides an ability to add SEO fields to Model.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%