12.11.2020
11:21
12.11.2020 11:21:04
Несколько примеров работ с SEO данными api для страниц, инфоблоков, разделов, элементов
SEO поля для страницы$APPLICATION->SetTitle("Заголовок H1");
$APPLICATION->SetPageProperty('title', 'заголовок окна браузера');
$APPLICATION->SetPageProperty("keywords", "ключевые слова");
$APPLICATION->SetPageProperty("description", "описание страницы"); |
Вывод на странице
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?= LANG_CHARSET;?>">
<META NAME="ROBOTS" content="ALL">
<?$APPLICATION->ShowMeta("keywords")?>
<?$APPLICATION->ShowMeta("description")?>
<title><?$APPLICATION->ShowTitle()?></title>
<?$APPLICATION->ShowCSS();?>
</head>
<body>
... |
В модуле "Управление структурой" задаётся свойство title - Заголовок окна браузера
В теге h1 будет выводиться всегда заголовок страницы, независимо от того задан title или нет.
В теге title будет выводиться заголовок страницы, но если задано title - Заголовок окна браузера, то будет выводиться свойство страницы title - Заголовок окна браузера.
<title><?$APPLICATION->ShowTitle()?></title>
<h1><?$APPLICATION->ShowTitle(false)?></h1> |
SEO ПОЛЯ элемента, раздела, инфоблока
Скрипт, который выводит метатеги всех разделов инфоблока в одной таблице |
$ipropValues = new \Bitrix\Iblock\InheritedProperty\IblockValues($iblockId); //для инфоблока
$ipropValues = new \Bitrix\Iblock\InheritedProperty\SectionValues($iblockId,$sectionId); //для раздела
$ipropValues = new \Bitrix\Iblock\InheritedProperty\ElementValues($iblockId,$elementId); //для элемента
$arSeoProps = $ipropValues->getValues(); //получить
$ipropValues->clearValues(); //очистить |
SEO ШАБЛОНЫ элемента, раздела, инфоблока$ipropTemplates = new \Bitrix\Iblock\InheritedProperty\IblockTemplates($iblockId); //для инфоблока
$ipropTemplates = new \Bitrix\Iblock\InheritedProperty\SectionTemplates($iblockId,$iblockSectionId); //для раздела
$ipropTemplates = new \Bitrix\Iblock\InheritedProperty\ElementTemplates($iblockId,$iblockElementId); //для элемента
$arTemplates = $ipropTemplates->findTemplates(); //получить
$ipropTemplates->delete(); //удалить
//обновить
$arNewTemplates = array('SECTION_META_TITLE'=>"{=this.Name} - цена, купить в Москве");
$ipropTemplates->set($arNewTemplates); |
можно установить при добавлении или обновлении элемента, раздела, инфоблока
пример для елемента
$arFields["IPROPERTY_TEMPLATES"] = array(
"ELEMENT_META_TITLE" => $element["meta_title"], // title элемента
"ELEMENT_META_KEYWORDS" => $element["meta_keywords"], // ключевые слова элемента
"ELEMENT_META_DESCRIPTION" => $element["meta_description"], // сео-описание элемента
"ELEMENT_PAGE_TITLE" => $element["name"], // title страницы
"ELEMENT_PREVIEW_PICTURE_FILE_ALT" => $element["img"]["alt_text"], // альт для привью (маленькой) картинки
"ELEMENT_PREVIEW_PICTURE_FILE_TITLE" => $element["img"]["title_text"], // тайтл для привью (маленькой) картинки
"ELEMENT_PREVIEW_PICTURE_FILE_NAME" => $element["img"]["name"], // имя прьвью картинки
"ELEMENT_DETAIL_PICTURE_FILE_ALT" => $element["img"]["alt_text"],
"ELEMENT_DETAIL_PICTURE_FILE_TITLE" => $element["img"]["title_text"],
"ELEMENT_DETAIL_PICTURE_FILE_NAME" => $element["img"]["name"],
);
|
12.11.202011:2112.11.2020 11:21:04
Если блог был полезным, можете угостить меня "чашечкой кофе" :)
Сбер по номеру телефона +7 (953) 585-13-09 Вероника.
Спасибо!