Yandex Metrika
sanches.free 20 просмотров

Корректный Open Graph с кешированным контентом: превью и ключи после компонента

Зачем не хватает «простых» метаданных

Маркетинговые сети берут описание через Open Graph до первого перехода. Если вызывать свойства приложения ниже блока данных, они не успевают в head; если положиться на автокеш, изображение исчезает.

Подготовка картинки и базовых полей в result_modifier

<?php
$poster = \CFile::ResizeImageGet(
    $arResult["DETAIL_PICTURE"],
    ["width" => 1200, "height" => 630],
    BX_RESIZE_IMAGE_EXACT,
    true
);
$arResult["DETAIL_PICTURE"]["OG_SRC"] = $poster["src"] ?? "";
$this->__component->SetResultCacheKeys(["DETAIL_PICTURE"]);
$APPLICATION->SetPageProperty("og:title", $APPLICATION->GetTitle(false));
$APPLICATION->SetPageProperty("og:description", $APPLICATION->GetProperty("description"));

og:image из component_epilog

<?php
$base = SITE_SERVER_PROTOCOL . SITE_SERVER_NAME;
$APPLICATION->SetPageProperty("og:image", $base . $arResult["DETAIL_PICTURE"]["OG_SRC"]);
// В header.php вашей темы выводится цепочка meta из $APPLICATION

Перед публикацией

Прогоните URL через отладчик соцсетей и очистите HTML‑композит узла контента перед повторным тестом.

В шаблоне не забывайте альтернативные теги (og:type, twitter:card), если модуль платформы их расширяет.

Не хотите копаться сами?

Починю за 1-3 дня. Без предоплаты — оплата по результату.

15+ лет опыта с 1С-Битрикс · Без предоплаты · 7 дней гарантии