Правильный постинг в соцсети из Битрикс

Решение, как постить материал из поста Битрикс в любую социальную сеть, используя протокол Open Graph

Задача, сделать так, чтобы при добавлении новостей в Битрикс, в соцсети автоматически подгружалось необходимое изображение, заголовок и описание. Чтобы не приходилось каждый раз выбирать картинку вручную. Для решения этой задачи, существует Open Graph protocol.

Для выполнения задачи используем следующие мета-теги, которые нужно разместить между тегами <head>…</head>:

<meta property="og:title" content="Заголовок новости" />
<meta property="og:description" content="Текст анонса" />
<meta property="og:image" content="Путь к изображению анонса" />

1 В качестве примера возьмем шаблон компонента news.detail. В папку шаблона (к примеру .default) добавляем файл result_modifier.php со следующим кодом:

<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();

//Кэшируем необходимые нам ключи $arResult что бы можно было их использовать в component_epilog.php
$this->__component->SetResultCacheKeys(array(
    "NAME",
    "PREVIEW_TEXT",
    "PREVIEW_PICTURE"
));?>

2 Далее создаем в этой же папке файл component_epilog.php с кодом:

<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();

$APPLICATION->AddHeadString('<meta property="og:title" content="' . $arResult["NAME"] . '" />');
$APPLICATION->AddHeadString('<meta property="og:description" content="' . $arResult["PREVIEW_TEXT"] . '" />');
$APPLICATION->AddHeadString('<meta property="og:image" content="' . $arResult["PREVIEW_PICTURE"]["SRC"] . '" />');
?>

3 Не забудьте в настройках компонента выделить в пункте «Источник данных» — «Картинка для анонса»

4 Что бы мета-теги появились в исходном коде, в шаблоне сайта должна присутствовать функция $APPLICATION->ShowHeadStrings(); или $APPLICATION->ShowHead();

Продолжая использовать веб- сайт beta-code.ru, вы даете согласие на обработку файлов cookie, пользовательских данных (сведения о местоположении; тип и версия ОС; тип и версия Браузера; тип устройства и разрешение его экрана; источник откуда пришел на сайт пользователь; с какого сайта или по какой рекламе; язык ОС и Браузера; какие страницы открывает и на какие кнопки нажимает пользователь; ip-адрес) в целях функционирования сайта, проведения ретаргетинга и проведения статистических исследований и обзоров. Если вы не хотите, чтобы указанные данные обрабатывались, покиньте сайт.
Принять