Битрикс — отдельные title для постраничного вывода

04.02.2018  15:01

Столкнулся с проблемой, что на сайте на Битриксе не удаётся поменять title на детальной каталога. Вероятно, в каком-то месте есть замена title. Чтобы не тратить время на поиски неведомого ералаша я сделал так:

В файле result_modifier.php добавил выбор СЕО-свойств нужного мне торгового предложения товара:
if (CModule::IncludeModule('iblock')) 
{ 
	$ipropValues = new BitrixIblockInheritedPropertyElementValues(OFFER_IBLOCK_ID, $ofId); 
	$arElement["IPROPERTY_VALUES"] = $ipropValues->getValues(); 
	if (!empty($arElement["IPROPERTY_VALUES"]["ELEMENT_META_TITLE"])) {
		$APPLICATION->SetPageProperty('title_custom', $arElement["IPROPERTY_VALUES"]["ELEMENT_META_TITLE"]);
	}
	if (!empty($arElement["IPROPERTY_VALUES"]["ELEMENT_META_KEYWORDS"])) {
		$APPLICATION->SetPageProperty('keywords_custom', $arElement["IPROPERTY_VALUES"]["ELEMENT_META_KEYWORDS"]);
	}
	if (!empty($arElement["IPROPERTY_VALUES"]["ELEMENT_META_DESCRIPTION"])) {
		$APPLICATION->SetPageProperty('description_custom', $arElement["IPROPERTY_VALUES"]["ELEMENT_META_DESCRIPTION"]);
	}
	if (!empty($arElement["IPROPERTY_VALUES"]["ELEMENT_PAGE_TITLE"])) {
		$arResult['H1_SUFFIX'] = ' '.$arElement["IPROPERTY_VALUES"]["ELEMENT_PAGE_TITLE"];
	}
}


А затем в основном шаблоне сайта в footer.php добавил подмену title, description и keywords
if ($APPLICATION->GetPageProperty("title_custom")!="")
{
    $APPLICATION->SetPageProperty("title", $APPLICATION->GetPageProperty("title_custom"));
}
if ($APPLICATION->GetPageProperty("keywords_custom")!="")
{
    $APPLICATION->SetPageProperty("keywords", $APPLICATION->GetPageProperty("keywords_custom"));
}
if ($APPLICATION->GetPageProperty("description_custom")!="")
{
    $APPLICATION->SetPageProperty("description", $APPLICATION->GetPageProperty("description_custom"));
}


Из той же обоймы: Битрикс — отдельные title для постраничного вывода.


перейти в Блог

Ударим лайками по бездорожью, разгильдяйству и бюрократизму!


Ключевые слова (тэги): 1С-Битрикс 26  PHP 37  SEO 12  web-программирование 58  

Вам есть что сказать — ну я же чую.
Высказаться о наболевшем, я выслушаю:
Имя


email (не публикуется)