Блог Горошко Андрея 1C-Битрикс,Разработка Управление заголовками и мета-тегами в Битрикс: SetPageProperty, ShowTitle, ShowMeta

Управление заголовками и мета-тегами в Битрикс: SetPageProperty, ShowTitle, ShowMeta

Средний рейтинг
Еще нет оценок

Правильное управление заголовками (<title>) и мета-тегами (description, keywords, robots) — это фундамент SEO-продвижения. В Битрикс за это отвечает глобальный объект $APPLICATION. С его помощью можно динамически устанавливать и выводить мета-данные в зависимости от контента страницы.

Все эти методы работают с так называемыми свойствами страницы.

1. Установка свойств страницы: SetPageProperty

Этот метод позволяет задать значение для любого свойства текущей страницы.

Синтаксис:
$APPLICATION->SetPageProperty(«КОД_СВОЙСТВА», «Значение»);

Пример: Установка title, description и keywords

Этот код обычно размещается в component_epilog.php компонента или прямо в теле страницы/компонента, после того как стали известны данные (например, название товара или новости).codePHP

// Допустим, мы получили данные элемента
$elementName = "Смартфон Model X";
$elementPreviewText = "Лучший смартфон 2025 года с невероятной камерой.";

// Устанавливаем свойства страницы
$APPLICATION->SetPageProperty("title", $elementName . " - купить в интернет-магазине");
$APPLICATION->SetPageProperty("description", "Купите " . $elementName . ". " . $elementPreviewText);
$APPLICATION->SetPageProperty("keywords", "смартфон, model x, купить, цена");

2. Вывод свойств в шаблоне сайта (header.php)

После того как свойства установлены, их нужно вывести в <head> шаблона сайта. Для этого используются методы Show….

Метод ShowTitle()

Этот метод выводит заголовок страницы. Он сначала ищет свойство страницы с кодом title. Если оно не установлено, он берет заголовок, установленный через $APPLICATION->SetTitle().

В header.php

<head>
    ...
    <title><?$APPLICATION->ShowTitle()?></title>
    ...
</head>

Метод ShowMeta()

Этот метод выводит свойство страницы в виде мета-тега. Он принимает несколько параметров, но чаще всего используются первые два.

Синтаксис:
$APPLICATION->ShowMeta(«код_свойства_страницы», «атрибут_name_метатега», false);

Пример в header.php

<head>
    ...
    <?
    $APPLICATION->ShowMeta("description", "description");
    $APPLICATION->ShowMeta("keywords", "keywords");
    $APPLICATION->ShowMeta("robots", "robots");
    ?>
    ...
</head>

Этот код автоматически сгенерирует:

<meta name="description" content="Значение, которое мы установили...">
<meta name="keywords" content="Значение, которое мы установили...">

Если свойство robots не было установлено, то соответствующий мета-тег просто не будет выведен.

3. Управление заголовком H1: SetTitle и ShowTitle(false)

Часто заголовок <title> и заголовок <h1> на странице должны отличаться.

  • <title> (свойство title) — для браузера и поисковиков (более длинный, с коммерческими добавками).
  • <h1> (заголовок страницы) — для пользователя (более короткий и по существу).

// В коде компонента или страницы
$APPLICATION->SetTitle("Смартфон Model X"); // Устанавливаем заголовок H1
$APPLICATION->SetPageProperty("title", "Смартфон Model X - купить в Москве"); // Устанавливаем <title>

// В header.php
<title><?$APPLICATION->ShowTitle()?></title>

// В шаблоне компонента или в work_area
<h1><?$APPLICATION->ShowTitle(false)?></h1>
  • $APPLICATION->ShowTitle() (без параметров) или $APPLICATION->ShowTitle(true) выводит свойство title.
  • $APPLICATION->ShowTitle(false) выводит заголовок, установленный через SetTitle().

4. Open Graph и другие кастомные теги

Метод AddHeadString позволяет добавлять в <head> любые произвольные строки. Это идеально подходит для мета-тегов Open Graph (для соцсетей) и других.

// Устанавливаем Open Graph теги
$ogImageUrl = CFile::GetPath($arResult['DETAIL_PICTURE']);
$APPLICATION->AddHeadString('<meta property="og:title" content="'.$APPLICATION->GetProperty('title').'" />');
$APPLICATION->AddHeadString('<meta property="og:description" content="'.$APPLICATION->GetProperty('description').'" />');
$APPLICATION->AddHeadString('<meta property="og:image" content="https://mysite.ru'.$ogImageUrl.'" />');

GetProperty() — метод для получения уже установленного значения свойства. Полезен, когда одно значение нужно использовать несколько раз.

Вывод:
Объект $APPLICATION дает полный контроль над секцией <head> вашего сайта. Используя SetPageProperty для установки данных и ShowTitle/ShowMeta для их вывода, вы можете реализовать любую сложную логику для SEO-оптимизации, делая каждую страницу уникальной и привлекательной для поисковых систем.

$APPLICATION, SetPageProperty, ShowTitle, ShowMeta, GetProperty, SEO Битрикс, заголовки, мета-теги, title, description, keywords, Open Graph.

Мой рейтинг:

Добавить комментарий

Related Post

Работа с пользователями в Битрикс: CUser::GetList, Add, UpdateРабота с пользователями в Битрикс: CUser::GetList, Add, Update

Средний рейтинг Еще нет оценок Управление пользователями — одна из ключевых задач любой CMS. В Битрикс для этого предназначен класс CUser. Глобальный объект $USER (экземпляр этого класса) доступен на каждой странице и содержит

Фильтрация по множественным свойствам в Битрикс: Логика «И» и «ИЛИ»Фильтрация по множественным свойствам в Битрикс: Логика «И» и «ИЛИ»

Средний рейтинг Еще нет оценок При фильтрации по множественным свойствам возникает важный вопрос: как именно должны работать условия? Логика «ИЛИ» — простой случай Это поведение по умолчанию как в старом

Правильное использование BB кода в 1С-БитриксПравильное использование BB кода в 1С-Битрикс

Средний рейтинг Еще нет оценок В 1С-Битрикс BB код используется для форматирования текста в различных модулях, таких как форумы, задачи, блоги и комментарии. Для его обработки используется класс CTextParser. Вот