API которые используется в SEO инфобоков расположены в директории:
\bitrix\modules\iblock\lib\inheritedproperty\
Получение значений SEO для инфоблока с идентификатором в переменной $iblockId:
$ipropIblockValues = new \Bitrix\Iblock\InheritedProperty\IblockValues($iblockId) print_r($ipropIblockValues->getValues());
Получить поля для элемента инфоблока можно так:
CModule::IncludeModule("iblock");
$ipropValues = new \Bitrix\Iblock\InheritedProperty\ElementValues(
$arResult["IBLOCK_ID"], // ID инфоблока
$arResult["ID"] // ID элемента
);
$arResult['IPROPERTY_VALUES'] = $ipropValues->getValues();
Получить значения полей для раздела можно так:
CModule::IncludeModule("iblock");
$rsSection = CIBlockSection::GetList(
array(),
array(
"IBLOCK_ID"=>$arParams['IBLOCK_ID'],
"ACTIVE"=>"Y",
"=CODE"=>$arParams["SECTION_CODE"]),
false
);
if($arSection = $rsSection->GetNext()){
$ipropValues = new \Bitrix\Iblock\InheritedProperty\SectionValues(
$arSection["IBLOCK_ID"],
$arSection["ID"]
);
$arSection["IPROPERTY_VALUES"] = $ipropValues->getValues();
}
Изменить SEO шаблоны для инфоблока с идентификатором в переменной $iblockId:
$ipropIblockTemplates = new \Bitrix\Iblock\InheritedProperty\IblockTemplates($iblockId);
$templates = $ipropIblockTemplates->findTemplates();
$newTemplates=array('SECTION_META_TITLE'=>$templates['SECTION_META_TITLE']['TEMPLATE']." дополнительный текст - {=this.Name}");
$ipropIblockTemplates->set($newTemplates);
Изменить SEO шаблоны для раздела с идентификатором в переменной $iblockSectionId:
$ipropSectionTemplates = new \Bitrix\Iblock\InheritedProperty\SectionTemplates($iblockId,$iblockSectionId);
$templates = $ipropSectionTemplates->findTemplates();
$newTemplates=array('SECTION_META_TITLE'=>$templates['SECTION_META_TITLE']['TEMPLATE']." дополнительный текст - {=this.Name}");
$ipropSectionTemplates->set($newTemplates);
Изменить SEO шаблоны для элемента с идентификатором в переменной $iblockElementId:
$ipropElementTemplates = new \Bitrix\Iblock\InheritedProperty\ElementTemplates($iblockId,$iblockElementId);
$templates = $ipropElementTemplates->findTemplates();
$newTemplates=array('ELEMENT_META_TITLE'=>$templates['ELEMENT_META_TITLE']['TEMPLATE']." дополнительный текст - {=this.Name}");
$ipropElementTemplates->set($newTemplates);
Удалить SEO шаблоны для инфоблока с идентификатором в переменной $iblockId:
$ipropIblockTemplates = new \Bitrix\Iblock\InheritedProperty\IblockTemplates($iblockId); $ipropIblockTemplates->delete();
Удалить SEO шаблоны для раздела с идентификатором в переменной $iblockSectionId:
$ipropSectionTemplates = new \Bitrix\Iblock\InheritedProperty\SectionTemplates($iblockId,$iblockSectionId); $ipropSectionTemplates->delete();
Удалить SEO шаблоны для элемента с идентификатором в переменной $iblockElementId:
$ipropElementTemplates = new \Bitrix\Iblock\InheritedProperty\ElementTemplates($iblockId,$iblockElementId); $ipropElementTemplates->delete();
Сбросить кеш SEO для инфоблока с идентификатором в переменной $iblockId:
$ipropIblockValues = new \Bitrix\Iblock\InheritedProperty\IblockValues($iblockId); $ipropIblockValues->clearValues();
Сбросить кеш SEO для раздела инфоблока с идентификатором в переменной $iblockSectionId:
$ipropSectionValues = new \Bitrix\Iblock\InheritedProperty\IblockSectionValues($iblockId,$iblockSectionId); $ipropSectionValues->clearValues();
Сбросить кеш SEO для элемента инфоблока с идентификатором в переменной $iblockElementId:
$ipropElementValues = new \Bitrix\Iblock\InheritedProperty\IblockElementValues($iblockId,$iblockElementId); $ipropElementValues->clearValues();
