楼层12/yii2-metamaster

这个Yii2组件帮助通过几行代码来组织页面标题、元标签以及`og`和`twitter`开放图标签。

安装次数: 4,377

依赖者: 2

建议者: 0

安全性: 0

星级: 9

关注者: 5

分支: 7

开放问题: 1

类型:yii2-component

1.2.6 2023-12-17 18:51 UTC

This package is auto-updated.

Last update: 2024-09-17 20:35:17 UTC


README

Build Status Scrutinizer Code Quality Latest Stable Version Latest Unstable Version Total Downloads License

此文件也提供俄语版本:俄语.

这是一个用于在Yii2应用程序的模板头部生成一些元、开放图和Twitter卡片标签的组件。

支持的标签列表

  • canonical
  • head标题
  • meta描述
  • meta关键词
  • og:sitename
  • og:type
  • og:url
  • og:title
  • og:description
  • og:image
  • og:image:width
  • og:image:height
  • twitter:card
  • twitter:domain
  • twitter:site
  • twitter:description
  • twitter:image:src
  • itemprop:name
  • itemprop:image

安装

只需运行

$ composer require floor12/yii2-metamaster

或将以下内容添加到composer.json的require部分。

"floor12/yii2-metamaster": "dev-master"

之后,将一些基本metamaster数据包含到应用程序配置的components部分。

    'components' => [
        'metamaster' => [
            'class' => 'floor12\metamaster\MetaMaster',
            'siteName' => 'My cool new Web Site',
            'defaultImage' => '/design/export_logo.png',
        ],
    ...

属性

  1. siteName - 在开放图标签中显示的项目名称;
  2. defaultImage - 开放图标签中默认图像的Web相对路径;
  3. web - yii2别名,用于读取开放图标签的图像宽度和高度(默认为@app/web
  4. protocol - 生成链接的默认协议(默认为https

使用方法

可以在应用程序的任何地方使用。只需使用setter,然后调用带有传入View对象的register(View $view)方法。

允许的setter

Metamaster::setSiteName(string $value)
Metamaster::setTitle(string $value)
Metamaster::setUrl(string $value)
Metamaster::setType(string $value)
Metamaster::setDescription(string $value)
Metamaster::setImage(string $relativePath, string $absolutePath = null)

例如,在控制器中使用

public function actionIndex()
   {
        Yii::$app->metamaster
                   ->setTitle("This is test page")
                   ->setDescription("This is page description")
                   ->setImage('/images/article/image.png')
                   ->register(Yii::$app->getView());
                   
        return $this->render('index');
    }
      

它将在模板中生成您所需的所有内容

<title>This is test page</title>
<link href="https://your-domain.com/site/index" rel="canonical">
<meta name="description" content="This is page description">
<meta property="og:site_name" content="My cool new Web Site">
<meta property="og:type" content="article">
<meta property="og:url" content="https://your-domain.com/site/index">
<meta name="twitter:card" content="summary">
<meta name="twitter:domain" content="https://your-domain.com">
<meta name="twitter:site" content="My cool new Web Site">
<meta property="og:title" content="This is test page">
<meta itemprop="name" content="This is test page">
<meta property="og:description" content="This is page description">
<meta name="twitter:description" content="This is page description">
<meta property="og:image" content="https://your-domain.com/images/article/image.png">
<meta property="twitter:image:src" content="https://your-domain.com/images/article/image.png">
<meta itemprop="image" content="https://your-domain.com/images/article/image.png">