<?
//////////////////////////////////////////////////////////////
// ИНТЕГРАЦИЯ КОМПОНЕНТА ДЛЯ ВЫВОДА SEO-ПАРАМЕТРОВ
//////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////
// КОД ВЫЗОВА КОМПОНЕНТА
// Необходимо предварительно создать инфоблок со свойствами:
// H1, TITLE, KEYWORDS, DESCRIPTION (PROPERTY)
// Поле NAME элементов инфоблока будет в качестве URL
//
// Размещение: /include/seo_component.php
//////////////////////////////////////////////////////////////
$APPLICATION->IncludeComponent('custom:seo', "", array(
"IBLOCK_ID" => 3, // ID инфоблока
"FILTER" => array("NAME"=>$APPLICATION->GetCurDir()),
"SELECT" => array("PROPERTY_*"),
));
?>
<?
//////////////////////////////////////////////////////////////
// КОД ДКЛЮЧЕНИЯ КОМПОНЕНТА
//
// Размещение: footer.php шаблона сайта
// (после всех других компонентов ближе к </body>)
//////////////////////////////////////////////////////////////
$APPLICATION->IncludeFile('/include/seo_component.php', array(), array("MODE"=>"PHP"));
?>
<?
//////////////////////////////////////////////////////////////
// КОД КОМПОНЕНТА:
//
// Размещение: /local/components/custom/seo/component.php
// В подходящем пространстве имен, задать имя каталога компонента
// /local/components/custom/ - Пространство имен
// /local/components/custom/seo/ - Каталог с именем компонента
//////////////////////////////////////////////////////////////
?>
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die();
if (!isset($arParams["CACHE_TIME"]))
$arParams["CACHE_TIME"] = 3600;
CModule::IncludeModule("iblock");
$arFilter = array("IBLOCK_ID" => $arParams["IBLOCK_ID"], "ACTIVE" => "Y");
$arSelect = array("ID", "IBLOCK_ID", "NAME", "PREVIEW_PICTURE");
if($arParams['SORT_BY'] && $arParams['SORT_ORDER']) $arOrder = array($arParams['SORT_BY'] => $arParams['SORT_ORDER']);
else $arOrder = array('SORT' => 'ASC');
if($arParams["SELECT"]) $arSelect = array_merge($arSelect, $arParams["SELECT"]);
if($arParams["FILTER"]) foreach($arParams['FILTER'] as $key=>$val) $arFilter[$key] = $val;
$arNavParams = false;
$rsItems = CIBlockElement::GetList($arOrder, $arFilter, false, $arNavParams, $arSelect);
$arResult = array();
$ITEMS = array();
$i = 0;
while($ob = $rsItems->GetNextElement()){
$ITEMS[$i] = $ob->GetFields();
$ITEMS[$i]["PROPS"] = $ob->GetProperties();
$i++;
}
if(count($ITEMS) == 1){
$arResult = $ITEMS[0];
$H1 = $arResult["PROPS"]['H1']['VALUE'];
$TITLE = $arResult["PROPS"]['TITLE']['VALUE'];
$KEYWORDS = $arResult["PROPS"]['KEYWORDS']['VALUE'];
$DESCRIPTION = $arResult["PROPS"]['DESCRIPTION']['VALUE'];
IF($H1){
$APPLICATION->SetTitle($H1);
}
IF($TITLE){
$APPLICATION->SetPageProperty("title", $TITLE);
}
IF($KEYWORDS){
$APPLICATION->SetPageProperty("keywords", $KEYWORDS);
}
IF($DESCRIPTION){
$APPLICATION->SetPageProperty("description", $DESCRIPTION);
}
$this->IncludeComponentTemplate();
}
?>