Передать переменные в шаблон

Глобальная переменная

Чтобы сделать переменную доступную из любого места кода, можно использовать файл bitrix/.settings.php.

# bitrix/.settings.php

return array (
    // …
    'contacts' => array(
        'value' => array(
            'phone' => '111111111',
            'email' => 'example@know-online.com',
        ),
    ),
    // …
)

Теперь можно обратиться к свойству «contacts» через следующий код:

$contacts = \Bitrix\Main\Config\Configuration::getValue("contacts");

$contacts['phone']; // 111111111
$contacts['email']; // example@know-online.com

Переменные для указанного раздела

Создать переменные, которые будут доступны в указанном разделе, можно через razdel_name/.section.php.

// .section.php
$arDirProperties = array(
    'engine' => 'Битрикс',
);

К данному свойству можно обратиться через следующий код:

$APPLICATION->GetDirProperty('engine'); // Битрикс

Также данное свойство можно изменять в настройках раздела:

Bitrix: Пользовательские свойства раздела

Файл «.section.php» можно создать в главной директории сайта, тогда её переменные будут доступны во всех PHP-файлах.

Изменить значение передаваемого свойства можно через метод $APPLICATION->SetDirProperty():

$APPLICATION->SetDirProperty('engine', 'Битрикс 15');

Передать переменные в шаблон только для текущей страницы

В начале любой страницы с контентом можно вставить метод $APPLICATION->SetPageProperty().

$APPLICATION->SetPageProperty('city', 'Москва');

В результате в свойствах страницы будет доступен новый параметр «city», который можно будет изменить.

Bitrix. Заголовок и свойства страницы

Bitrix. Свойства страницы

Значение к свойству страницы можно получить через метод $APPLICATION->GetPageProperty().

$APPLICATION->GetPageProperty('city'); // Москва

Также может использоваться метод $APPLICATION->GetProperty(), который в случае отсутствия указанного свойства, проверяет наличие данного свойства у родительских разделов.

Bitrix Yii 2 WordPress