Добавляем мета теги в Opencart 2 /

Open Grap для сайта очень полезен и если вы хотите добавить ее себе. Здесь вы найдете решение

26 / 01 / 2019 294 opencart Aвтор: Фрилансер
Добавляем мета теги в Opencart 2

Для начала давайте разберемся, что же такое разметка Open Graph. Это протокол, который позволяет управлять и контролировать данные, формирующиеся в превью (структурирует информацию о странице) в посте, когда пользователь делиться ссылкой в социальных сетях. В реальности - это несколько строчек мета-тегов, которые нужно внедрить в код вашего сайта. Именно они и позволят сформировать желаемый вид для поста в социальных сетях.

Рассмотрим каждый тег Open Graph по отдельности и разберемся в их значениях:

  • "og:locale" — указывает локализацию (язык сайта), можно использовать значение "ru_RU" по умолчанию.
  • "og:type" — указывает тип страницы (статья, новость, видео, категория и т. д.), можно использовать по умолчанию "article".
  • "og:title" — указывает заголовок статьи.
  • "og:description" — указывает краткое описание, которое выводится при формировании превью ссылки.
  • "og:url" — ссылка на страницу сайта.
  • "og:image" — ссылка на картинку, которая будет отображаться в посте.
  • "og:site_name" — название сайта.

Так вот. Будем править файлы напрямую . Что нежелательно и Нужно это делать через модификатор ocmod. 

Но для наглядности будем делать так.

Находим файл document.php по пути system/library

Добавляем в клас document новую приватную переменную и делаем ее массивом.

находим там private $keywords; и ниже добавляем 

до 

class Document {
	private $title;
	private $description;
	private $keywords;
	private $links = array();
	private $styles = array();
	private $scripts = array();

после 

class Document {
	private $title;
	private $description;
	private $keywords;
	private $metatag = array();//добаляем
	private $links = array();
	private $styles = array();
	private $scripts = array();

Потом добавляем публичную функцию для добавления содержимого в наши теги 

	public function addMeta($meta) {
		$this->metatag[] = $meta;
	}

Для обращения к этой функции добавляем еще одну 

public function getMeta() {
		return $this->metatag;
	}

  Работа с файлом document.php закончена.

Далее  нам нужно решите где будем  выводить эти теги . Если в карточке товара ищем файл catalog/controller/product/product.php

Далее просто вызываем  функцию addMeta() и передаем им значения.

например сделаем  поле  og:image

Ищем $data['products'][] ;


 $this->document->addLink($image);// тут в массив тегов запишем значения  картинки
$data['products'][] = array(
                    'product_id' => $result['product_id'],
                    'thumb' => $image,
                    'name' => $result['name'],
                    'quantity' => $result['quantity'],
                    'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get('config_product_description_length')) . '..',
                    'price' => $price,
                    'special' => $special,
                    'tax' => $tax,
                    'minimum' => $result['minimum'] > 0 ? $result['minimum'] : 1,
                    'rating' => $rating,
                    'href' => $this->url->link('product/product', 'product_id=' . $result['product_id'])
                );

Так можно несколько раз вызывать эту функцию и добавлять эти значения в набор.

Чтобы добавить эту информации в шапку header ищем файл catalog/controller/common/header.php

Добавляем строку для вывода содержимого  тегов что мы записали выше.

$data['meta_tag'] = $this->document->getMeta();

Тепер в шаблоне header.tpl в переменной $meta_tag — массив значений наших тегов. 

Можете выводить их из массива. 

Думаю дальше нет смысла показывать как вывести содержимое массива.  

 

3 случайных Поста

Card image cap
Contact form 7- редирект на страницы при разных значения полей-
Card image cap
Галерея товара woocommerce
Card image cap
Сайты помошники для начинающих фрилансеров и профи.

коммент.

© SiteBlog designer