Микроразметка OpenGraph с данными из детальной новости

Как вывести на сайте микроразметку Open Graph с детальной картинкой и текстом анонса.

Для того, чтобы осуществлялось формирование meta-тегов open graph с нужной нам информацией, необходимо для начала добавить в массив $arResult требуемые переменные, а именно: DETAIL_PICTURE и PREVIEW_TEXT.

Добавление происходит в файле result_modofier.php шаблона компонента (если такой файл отсутствует, его нужно создать):

$cp = $this->__component;
if( is_object($cp) ) {
	$cp->SetResultCacheKeys(array('DETAIL_PICTURE', 'PREVIEW_TEXT'));
}

Затем в файле component_epilog.php (также создаем, если такового нет) устанавливаем свойства:

$APPLICATION->SetPageProperty('og-image', '<meta property="og:image" content="https://' . SITE_SERVER_NAME . $arResult['DETAIL_PICTURE']["SRC"].'">' );
$APPLICATION->SetPageProperty('og-description', '<meta property="og:description" content="'.$arResult['PREVIEW_TEXT'].'">' );

И выводим эти свойства в head в header.php шаблона сайта:

<?$APPLICATION->ShowProperty('og-image');?>
<?$APPLICATION->ShowProperty('og-description');?>
<meta property="og:title" content="<?$APPLICATION->ShowTitle(false);?>"/>
<meta property="og:url" content="https://<?=SITE_SERVER_NAME?><?=$APPLICATION->GetCurPage(false);?>" />
<meta property="og:type" content="website"/>

Помимо них добавлены еще 3 meta-тега open graph: og:title, og:url и og:type.


bitrixone © 2024