SEO оптимізація сьогодні є невід’ємною частиною будь-якого проекту, який бажає просунутися серед різних систем пошуку. Безліч розробників займаються розробкою своїх систем управлінь сайтами врахували цей факт, оснащуючи свої додатки потрібним функціоналом. Не стали винятком і розробники платформи Бітрікс. Починаючи з версії 14.0.0 в модулі Інформаційні блоки доступна можливість автоматичного створення метаданих для елементів і розділів инфоблока. Інформацію про налаштування можна почитати ось тут, ми ж розглянемо приклад використання SEO даних за допомогою API.
API які використовується в SEO инфобоков розташовані в директорії:
\bitrix\modules\iblock\lib\inheritedproperty\
SEO поля елементів инфоблока можна заповнювати допомогою API, для цього при оновленні у масиві полів необхідно додати ключ «IPROPERTY_TEMPLATES«:
…
“IPROPERTY_TEMPLATES” => array (
“SECTION_META_TITLE” => “”,
“SECTION_META_KEYWORDS” => “”,
“SECTION_META_DESCRIPTION” => “”,
“SECTION_PAGE_TITLE” => “”,
“ELEMENT_META_TITLE” => “”,
“ELEMENT_META_KEYWORDS” => “”,
“ELEMENT_META_DESCRIPTION” => “”,
“ELEMENT_PAGE_TITLE” => “”,
“SECTION_PICTURE_FILE_ALT” => “”,
“SECTION_PICTURE_FILE_TITLE” => “”,
“SECTION_PICTURE_FILE_NAME” => “”,
“SECTION_DETAIL_PICTURE_FILE_ALT” => “”,
“SECTION_DETAIL_PICTURE_FILE_TITLE” => “”,
“SECTION_DETAIL_PICTURE_FILE_NAME” => “”,
“ELEMENT_PREVIEW_PICTURE_FILE_ALT” => “”,
“ELEMENT_PREVIEW_PICTURE_FILE_TITLE” => “”,
“ELEMENT_PREVIEW_PICTURE_FILE_NAME” => “”,
“ELEMENT_DETAIL_PICTURE_FILE_ALT” => “”,
“ELEMENT_DETAIL_PICTURE_FILE_TITLE” => “”,
“ELEMENT_DETAIL_PICTURE_FILE_NAME” => “”,
),
…
Отримати поля SEO для елемента можна так:
CModule::IncludeModule(“iblock”);
$ipropValues = new \Bitrix\Iblock\InheritedProperty\ElementValues(
$arCurElem[“IBLOCK_ID”], // ID инфоблока
$arCurElem[“ID”] // ID елемента
);
$arElMetaProp = $ipropValues->getValues();
echo “; print_r ($arElMetaProp); echo “;
Поля SEO для розділу можна отримати схожим способом:
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();
echo “”; print_r($arSection); echo “;
}
Додав: htmaker, 08.03.2014 р.
(5 голосів, середній: 5,00 з 5)
Завантаження…
Діліться з друзями:
См. також:
Налаштування часу у VMBitrix
Рубрика: Bitrix, Linux
Видалення «кинутих» кошиків в системі Бітрікс
Рубрика: Bitrix
Використання highload-блоків в Bitrix
Рубрика: Bitrix
Як виконати SQL запит в Bitrix
Рубрика: Bitrix
Як підрахувати кількість елементів в Bitrix?
Рубрика: Bitrix
Динамічне масштабування зображень в Bitrix
Рубрика: Bitrix
Виключаємо користувача з ID=1 групи адміністраторів в Bitrix
Рубрика: Bitrix
Як скинути пароль адміністратора у Bitrix?
Рубрика: Bitrix
SQL-запити в бітрікс
Рубрика: Bitrix
Коментарі
17.06.2015 в 14:27
SEO поля елементів инфоблока можна заповнювати допомогою API, для цього при оновленні у масиві полів необхідно додати ключ «IPROPERTY_TEMPLATES«:
Де його потрібно додавати?
Отримати поля SEO для елемента можна так:
Де потрібно розмістити даний код?
Відповісти
20.06.2015 в 21:44
IPROPERTY_TEMPLATES додається при оновленні полів елемента.
Код одержання SEO-полів можна розмістити у компоненті, де відбувається вибірка елементів.
Відповісти
31.03.2018 в 19:02
а як встановити поля сео для інформаційного блоку?
Відповісти