В Bitrix Framework для создания мета-тегов с атрибутом property (как в Open Graph) вместо name, вы можете использовать метод $APPLICATION->SetPageProperty() в сочетании с $APPLICATION->AddHeadString().
Способ 1: Использование AddHeadString
$APPLICATION->AddHeadString('<meta property="og:title" content="Ваш заголовок" />', true);Code language: PHP (php)
Способ 2: Если нужно динамически установить свойство
$APPLICATION->SetPageProperty("property", "og:title", "Ваш заголовок");
// Но этот метод не всегда корректно работает с `property`, поэтому лучше первый вариант.Code language: PHP (php)
Пример для Open Graph:
$APPLICATION->AddHeadString('<meta property="og:title" content="' . htmlspecialchars($APPLICATION->GetTitle()) . '" />', true);
$APPLICATION->AddHeadString('<meta property="og:description" content="' . htmlspecialchars($APPLICATION->GetProperty("description")) . '" />', true);
$APPLICATION->AddHeadString('<meta property="og:image" content="https://example.com/image.jpg" />', true);Code language: PHP (php)
Важно:
AddHeadStringдобавляет произвольный HTML в<head>.- Второй параметр (
true) означает, что дубликаты будут удалены. - Для сложных случаев можно использовать
\Bitrix\Main\Page\Assetили напрямую редактировать$APPLICATION->GetPageProperty("description").
Если вам нужно добавлять много Open Graph-тегов, лучше создать отдельную функцию или компонент.
