вход   

Работа со свойствами страниц, заголовками, мета-тегами

весь список раздела "Шпаргалка"


$APPLICATION->SetTitle("Заголовок 1"); - задать заголовок страницы
$APPLICATION->SetPageProperty('title','Заголовок 2'); - тоже задать заголовок страницы (но эта функция имеет приоритет над первой)
$APPLICATION->ShowTitle() - показ заголовка страницы // покажет заголовок 1
$APPLICATION->ShowTitle(false) - показ заголовка страницы, заданного через SetTitle // покажет заголовок 2

Установить свойство страницы
$APPLICATION->SetPageProperty("keywords", "веб, разработка, программирование");

Установить свойство раздела
$APPLICATION->SetDirProperty("keywords", "дизайн, веб, сайт");

Показать свойство (аналог echo xxx)
ShowProperty("page_title")
Получить свойство как переменную (аналог присвоения переменной) $keywords = $APPLICATION->GetProperty("keywords");
Свойство страницы
$keywords = $APPLICATION->GetPageProperty("keywords");

Массив всех свойств страницы
$arProp = $APPLICATION->GetPagePropertyList();

Свойства раздела
$keywords = $APPLICATION->GetDirProperty("keywords");

Массив всех свойств раздела
$arProp = $APPLICATION->GetDirPropertyList();

Вывод мета-тегов
$APPLICATION->ShowMeta("keywords_prop", "keywords")
$APPLICATION->ShowMeta("description_prop", "description")

Получить мета-тег
$meta_keywords = $APPLICATION->GetMeta("keywords_prop", "keywords");


Мета-теги из компонента
Этот код необходимо добавить в result_modifier.php

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

 // текст из множественного свойства "scope_application" елемента преобразуем в строку через запятую
global $type_str;
$type_str="";

foreach($arResult["PROPERTIES"]["scope_application"]["VALUE"] as $ar_type){
	$type_str.=", ".$ar_type;
}
$type_str=substr($type_str, 2);

Этот код необходимо добавить в component_epilog.php
код php
global $APPLICATION;
global $type_str;
$APPLICATION->AddHeadString('<meta property="og:title" content="' . $arResult["NAME"] . '" />');
$APPLICATION->AddHeadString('<meta property="og:description" content="' . strip_tags($arResult["PREVIEW_TEXT"]) . '" />');
$APPLICATION->AddHeadString('<meta property="og:image" content="' . $arResult["PREVIEW_PICTURE"]["SRC"] . '" />');
$APPLICATION->AddHeadString('<meta property="og:type" content="' . $type_str . '" />');
$APPLICATION->AddHeadString('<link rel="image_src" href="'. $arResult["PREVIEW_PICTURE"]["SRC"] . '" />');

Для других страниц в header.php можно добавить
код html
<title><?$APPLICATION->ShowTitle()?></title>
<meta property="og:title" content="<?$APPLICATION->ShowTitle()?>" />
<meta property="og:site_name" content="DAZ tools" />
<meta property="og:url" content="<?=$APPLICATION->GetCurDir()?>" />
<meta property="og:description" content="<?$APPLICATION->ShowProperty("description")?>" />