Битрикс. Настройка внешнего вида дополнительных элементов оформления сайта
Настройка сообщений об ошибках в 1С-Битрикс
В 1С-Битрикс можно отдельно настраивать:
- ошибку подключения к базе данных;
- ошибки SQL-запросов;
- страницу закрытого сайта;
- внешний вид постраничной навигации.
Многие из этих файлов можно переопределить без изменения ядра Битрикс.
Ошибка соединения с базой данных
За отображение ошибки подключения к БД отвечает файл:
/bitrix/php_interface/dbconn_error.php
Этот файл выводится, если Битрикс не смог подключиться к MySQL.
Когда появляется dbconn_error.php
- не работает MySQL;
- неверный пароль БД;
- ошибка в dbconn.php;
- сервер базы недоступен;
- переполнена база;
- ошибка подключения к сокету.
Пример кастомной страницы ошибки БД
<h1>Сайт временно недоступен</h1>
<p>
Проводятся технические работы.
Попробуйте зайти позже.
</p>
Ошибка SQL-запроса
За отображение ошибки SQL-запроса отвечает файл:
/bitrix/php_interface/dbquery_error.php
Он подключается, если произошла ошибка выполнения SQL.
Когда используется dbquery_error.php
- ошибка SQL-синтаксиса;
- отсутствует таблица;
- неверное поле;
- битый запрос;
- ошибка ORM;
- ошибка миграций.
Важно для production
На рабочем сайте не рекомендуется выводить:
- SQL-запросы;
- stack trace;
- пути к файлам;
- данные базы.
Лучше показывать:
- красивую страницу ошибки;
- логировать ошибки в файл;
- отправлять уведомления разработчику.
Настройка страницы закрытого сайта
При закрытии публичной части сайта Битрикс использует файл:
/bitrix/modules/main/include/site_closed.php
Но изменять файл ядра напрямую не рекомендуется.
Как правильно переопределить site_closed.php
Нужно:
- скопировать файл;
- поместить его в php_interface.
Например:
/bitrix/php_interface/include/site_closed.php
Или:
/bitrix/php_interface/<язык>/site_closed.php
Что можно изменить в заглушке
- HTML;
- CSS;
- логотип;
- контакты;
- форму обратной связи;
- таймер;
- информацию о техработах.
Настройка постраничной навигации
Постраничная навигация в старых компонентах Битрикс выводится функцией:
NavPrint()
Сигнатура функции NavPrint
NavPrint(
$title,
$show_allways = false,
$StyleText = "text",
$template_path
)
Параметры NavPrint
$title
Заголовок элементов навигации.
$show_allways
Если:
false
навигация не выводится, если все элементы помещаются на одну страницу.
Если:
true
навигация показывается всегда.
$StyleText
CSS-класс для оформления навигации.
$template_path
Путь к шаблону навигации.
Пример NavPrint
<?
$rsElements->NavPrint(
"Страницы",
true,
"modern-nav",
"/local/templates/.default/nav/"
);
?>
Где используется NavPrint
- старые компоненты Битрикс;
- самописные выборки;
- CIBlockElement::GetList();
- каталоги;
- новости;
- списки элементов.
Современная навигация
В новых компонентах чаще используется:
$arResult["NAV_STRING"]
или:
bitrix:system.pagenavigation
Итог
В 1С-Битрикс можно гибко настраивать:
- страницы ошибок БД;
- ошибки SQL-запросов;
- страницу закрытого сайта;
- внешний вид постраничной навигации.
Причем большинство настроек можно реализовать без изменения ядра системы.
Комментарии