интеграция шаблона

Интеграция шаблона в 1С-Битрикс: пошаговое руководство и код для натяжки верстки

✅ Создание шаблона в Битрикс

  1. Создать новый шаблон в админке БУС: Сайты — Шаблоны сайтов.
    Скопировать повторяющееся верхнее содержимое (хедер) и повторяющееся нижнее содержимое (футер) с оригинального, импортируемого шаблона в систему Битрикс по пути: Настройки — Настройки продукта — Сайты — Шаблоны сайтов.

Далее добавить над разделом хедера:

<?
if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true) {
die();
}
?>

Добавить сверху футера

Между хедером и футером вставить:
#WORK_AREA#
Битрикс эту строку заменит содержимым из site.com/index.php

Добавить сверху футера:

<?
if (!defined ('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true) {
die();
}
?>

Добавить сверху футера

Копируем оставшуюся середину из оригинального, импортируемого шаблона в site.com/index.php:

Копируем оставшуюся середину

Файлы стилей и скрипты подключаем через Instance — Asset в разделе header. Обратите внимание, что методы addCss() и addJs() — это современный стандарт Битрикса, который используется вместо устаревшего $APPLICATION->AddHeadScript:

use Bitrix\Main\Page\Asset;
$asset = Asset::getInstance();
$asset -> addCss('/local/templates/.default/css/bootstrap.css');
$asset -> addJs('/local/templates/.default/js/main.js');

Instance — Asset

Для вывода стилей на странице, далее по коду, до тега </head> добавить:

<? $APPLICATION->ShowHead(); ?>

Подключаем константы языка:

<!doctype html>
<html class="no-js" lang="<?=LANGUAGE_ID;?>">

Прописать title в разделе header. Title будет браться из настроек страницы в админке.

<title><? $APPLICATION->ShowTitle(); ?></title>

Для отображения панели управления добавить после тега <body>:

<div id="panel">
<? =$APPLICATION->ShowPanel(); ?>
</div>

2. Добавление файла description.php

Добавить файл description.php в папку шаблона local/templates/имя_шаблона/description.php с кодом:

<?
$arTemplate = array (
'NAME' => 'bega', //имя шаблона
'DESCRIPTION' => 'игровой шаблон', //описание шаблона
'SORT' => '',
'TYPE' => '',
);
?>

3. Добавление отладочной функции

Для включения отладочной функции, добавить в файл \bitrix\php_interface\init.php:

<?
if(file_exists($_SERVER["DOCUMENT_ROOT"]."/bitrix/php_interface/include/functions.php"))
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/php_interface/include/functions.php");
?>

Для использования отладочной функции, добавить в файл \bitrix\php_interface\include\functions.php:

<?
Function dump($var,$die=false,$all=false)
{
global$USER;
if($USER->IsAdmin()||($all==true))
{
?>
<pre><?var_dump($var)?></pre><br>
<?
}
if($die)
{
die;
}
}
?>

Теперь можно сделать вызов на страницах, чтобы увидеть какая информация приходит в главном массиве данных:

<?dump($arResult);?>

4. Добавление языковых файлов

Добавить lang файлы ru и eng для шаблона в \bitrix\templates\landing_template\lang\ru\header.php:

<?
$MESS['ABOUT_US'] = "О нас";
$MESS['SERVICES'] = "Сервисы";
$MESS['PORTFOLIO'] = "Портфолио";
$MESS['PRICING'] = "Цены";
?>

Дальше можно использовать их в верстке:

<?=GetMessage("SERVICES");?>

5. Подключение хедера и футера

В начале всех индексных страниц теперь можно подключать хедер:

<? require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/header.php"); ?>

В конце всех индексных страниц теперь можно подключать футер:

<? require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/footer.php"); ?>

6. Разные полезные макросы

Путь до шаблона:

<?=SITE_TEMPLATE_PATH;?>

Путь до директории сайта:

<?=SITE_DIR?>

Подключение JS библиотеки Битрикс:

<? CJSCore::Init(array("popup")); ?>
Поделись, если оказалось полезно :)
Нет комментариев

Написать