floor12/yii2-metamaster

This Yii2 component helps to organize page title, meta tags and `og` and `twitter` open graph tags in with a fiew lines of code.

Installs: 79

Dependents: 2

Suggesters: 0

Stars: 1

Watchers: 1

Forks: 0

Open Issues: 0

Type:yii2-component

1.0.3 2018-10-29 19:03 UTC

README

Build Status Latest Stable Version Latest Unstable Version Total Downloads License

Универсальный компонент организующий META и Open Graph теги в вашем приложении.

Список поддерживаемых тегов:

  • head title
  • meta description
  • meta keywords
  • 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

иди добавляем в секцию "requred" файла composer.json

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

###Добавляем компонент в конфиг приложения

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

Параметры:

  1. siteName - название сайта для Open Graph тегов.
  2. defaultImage - Путь к дефолтной картинке для экспорта в соцсети через Open Graph

Остальные атрибуты смотрите в исходном коде класса.

Использование

Использовать можно в любоме месте, вызывая метод register, передавая туда объект View. Например в контроллере:


public function actionIndex()
   {
        Yii::$app->metamaster->title = "Тестовая страница";
        Yii::$app->metamaster->description = "Это тестовое описание страницы";
        Yii::$app->metamaster->kewords = "ключевые слова";
        Yii::$app->metamaster->image = "/test/image.png";
        Yii::$app->metamaster->register(Yii::$app->getView());
        return $this->render('index');
    }

При этом будут сформированы и зарегистрированы все теги, указанные в начале этого файла.

Существует более простой вызов с использованием стрелочных функции:

public function actionIndex()
   {
        Yii::$app->metamaster
                   ->setTitle("Тестовая страница")
                   ->setDescription("Это тестовое описание страницы")
                   ->setImage('/images/article/image.png')
                   ->register(Yii::$app->getView());
                   
        return $this->render('index');
    }
      

При использовании изображений, их фактический размер определяется автоматически и прописывается в соответствующие og-теги.