Как задать атрибуты header и title для кастомной системной страницы

Материал из Umicms
Версия от 21:12, 30 января 2014; Velross (обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к:навигация, поиск

Актуально: версия системы 2.9.5.


Задача: задать атрибуты header и title для кастомной системной страницы (которая открывается по адресу http://сайт/модуль/метод.

Решение:

В системных страницах, если посмотреть возвращаемый xml-код страницы, присутствуют заполненные атрибуты header и title, например для страницы сайт/users/registrate/.xml:

<result module="users" method="registrate" domain="dizzynew.loc" system-build="22471" lang="ru" 
header="Регистрация" title="UMI.CMS - Регистрация" site-name="umicms.demo site" request-uri="/users/registrate/.xml">

Если же мы напишем кастомный метод и посмотрим его xml-код, то данные атрибуты будут не заполненными. Например, для страницы сайт/users/registrate_custom/.xml:

<result module="users" method="registrate_custom" domain="dizzynew.loc" system-build="22471" lang="ru" 
header="" title="UMI.CMS - " site-name="umicms.demo site" request-uri="/users/registrate_custom/.xml">

Чтобы заполнить данные атрибуты, необходимо внести новые значения в массив $C_LANG файла lang.php.

Данный файл присутствует в каждом модуле системы: classes/modules/users/ Так как наш кастом относится к модулю users, то и править нужно файл lang.php, находящийся в папке модуля.

Стоит заметить, что файл lang.php является системным и будет перезаписан при обновлении системы. Чтобы не потерять данные, Вам необходимо создать для каждой языковой версии сайта файл с суффиксом языка, например для русского языка файл необходимо назвать как lang.ru.php

В созданном файле сделаем записи:

<?php

$C_LANG = Array();

$C_LANG['registrate_custom'] = "Регистрация - кастом";

?>

Результат:

<result module="users" method="registrate_custom" domain="dizzynew.loc" system-build="22471" lang="ru" 
header="Регистрация - кастом" title="UMI.CMS - Регистрация - кастом" site-name="umicms.demo site" request-uri="/users/registrate_custom/.xml">