denisok94/yii-metatag

生成 Yii2 元标签。

安装: 33

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 0

开放问题: 0

类型:yii2-extension

0.0.8 2022-07-23 18:38 UTC

This package is auto-updated.

Last update: 2024-09-05 18:51:40 UTC


README

生成元标签。

安装

运行

composer require --prefer-dist denisok94/yii-metatag
# or
php composer.phar require --prefer-dist denisok94/yii-metatag

或在您的 composer.json 文件的 require 部分添加

"denisok94/yii-metatag": "*"
composer update
# or
php composer.phar update

在设置(config)中,即 web.php 文件所在位置或 config.php 文件中指定网站名称和主要语言

$config = [
    'name' => 'Site Name',
    'language' => 'en-EN',
    'basePath' => dirname(__DIR__),
    //...
];

使用

namespace app\controllers;
use \denisok94\helper\yii2\MetaTag;

class NewsController extends Controller
{
    // ...
    public function actionView($id)
    {
        $model = $this->findModel($id);
        //
        (new MetaTag($this->view))->setTags([
            'title' => $model->title,
            'description' => substr($model->text, 0, 100),
            'keywords' => $model->tags, // string
        ]);
        // or
        $this->view->title = $model->title;
        $meta = new MetaTag($this->view, $model->image->url);
        $meta->setTags([
            'description' => $model->announce,
            'keywords' => implode(', ', $model->tags), // if tags array
        ]);
        //
        return $this->render('view', ['model' => $model]);
    }
}

action 中指定,在 `render()` 之前。

$meta = new MetaTag($this->view);
$meta->setTags([
    'nameTag1' => 'valueTag1',
    'nameTag2' => 'valueTag2',
    //...
]);

设置图片

$meta = new MetaTag($this->view, "/image.jpg");

页面的独立图标(favicon)

// Before
$this->view->registerLinkTag(['rel' => 'icon', 'type' => 'image/png', 'href' => Url::to("/favicon.png", true)]);
// Since MetaTag
$meta = new MetaTag($this->view, null, "/favicon.png");