slider-arr arrow-right fb vk key
Created by potrace 1.13, written by Peter Selinger 2001-2015

Войти как пользователь
Вы можете войти на сайт, если вы зарегистрированы на одном из этих сервисов:
Created by potrace 1.13, written by Peter Selinger 2001-2015

cooperation Начать сотрудничество

Выберите файл
slider-arr arrow-right fb vk key
+7 (8452) 46-70-10 65-90-63
Меню

Часть 3. Регистрация модуля в системе

Опишем файл «/ix_guestbook/include.php»:

<?

require_once ($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/ix_guestbook/classes/general/ix_guestbook.php");

 

?>

Это описание позволит в дальнейшем автоматически использовать собственный класс с какой-то функциональностью в программном коде, если в публичной части сайта написать что-то вроде

if (CModule::IncludeModule(“ix_guestbook”)) …

Мелочь, а приятно. На реальном содержимом ix_guestbook.php пока подробно останавливаться не будем. Пусть там будет некая пустышка, необходимая лишь в качестве заготовки:

<?

 

class CIX_Guestbook {

        function Dummy()

        {

                return;

        }

 

}

 

?>

Теперь переходим к файлу «/ix_guestbook/install/index.php». Это основной файл для регистрации собственного модуля для Битрикса. Приведем его код целиком:

<?

global $MESS;

 

$strPath2Lang = str_replace("\\", "/", __FILE__);

$strPath2Lang = substr($strPath2Lang, 0, strlen($strPath2Lang)-strlen("/install/index.php"));

include(GetLangFileName($strPath2Lang."/lang/", "/install/index.php"));

include($strPath2Lang."/install/version.php");

 

Class ix_guestbook extends CModule

{

        var $MODULE_ID = "ix_guestbook";

        var $MODULE_VERSION;

        var $MODULE_VERSION_DATE;

        var $MODULE_NAME;

        var $MODULE_DESCRIPTION;

 

        function ix_guestbook()

        {

                $this->MODULE_VERSION = IX_GB_VERSION;

                $this->MODULE_VERSION_DATE = IX_GB_VERSION_DATE;

                $this->MODULE_NAME = GetMessage("IX_GB_MODULE_NAME");

                $this->MODULE_DESCRIPTION = GetMessage("IX_GB_MODULE_DESC");

        }

 

        function DoInstall()

        {

                RegisterModule("ix_guestbook");

        }

 

        function DoUninstall()

        {

                UnRegisterModule("ix_guestbook");

        }

 

}

?>

Код подключения текстовых констант целиком заимствован из существующих модулей БУС, и мы бы рекомендовали использовать его и для ваших модулей. Сами константы необходимо положить в каталоги, привязанные к конкретным языкам системы по следующему шаблону:

«/[module_name]/lang/[language]/install/index.php»

То есть, для русских констант путь к файлу будет таким:

«/ix_guestbook/lang/ru/install/index.php».

Содержимое файла включает в себя всего пять строковых констант:

<?

$MESS ['IX_GB_MODULE_NAME'] = "Гостевые книги";

$MESS ['IX_GB_MODULE_DESC'] = "Модуль для создания гостевых книг";

$MESS ['IX_GB_DENIED'] = "Доступ закрыт";

$MESS ['IX_GB_ADD_RECORD'] = "Посетитель";

$MESS ['IX_GB_MODERATOR'] = "Модератор";

?>

Обратите внимание на «/ix_guestbook/install/version.php»:

<?

define("IX_GB_VERSION","1.0.0");

define("IX_GB_VERSION_DATE","2005-02-25 16:00:00");

?>

Этот файл подключается строчкой include($strPath2Lang."/install/version.php") и позволяет нам удобно менять номер версии модуля в случае дальнейших обновлений.

В файле «/ix_guestbook/install/index.php» описывается один единственный класс, название которого должно совпадать с названием модуля. Этот класс обязан иметь конструктор (в нашем случае, function ix_guestbook()), в котором присваиваются такие основные параметры модуля, как его название, описание, номер и дата версии. Помимо этого класс модуля обязан иметь два метода: DoInstall и DoUninstall. Полагаем, что их смысл очевиден – они подключают и отключают модуль в ядре БУС.

На этом приготовления модуля, в общем-то, заканчиваются. Если мы зайдем в список доступных модулей в разделе «Администрирование», то обнаружим, что нам уже предлагают установить наш модуль в системе.

Рис. 2. Список модулей системы.

спасибо за просмотр!

© 2004 - 2017   ООО «Инфо-Эксперт». ИНН 6449058776.

Наш адрес: г. Саратов, ул. Астраханская, 88 оф. 20.

Тел.: (8452) 46-70-10

Все права защищены. Перепубликация материалов сайта без официального разрешения запрещена.

Cоглашение об использовании сайта.  Данный интернет-сайт носит исключительно информационный характер и ни при каких условиях не является публичной офертой, определяемой положениями Статьи 437 (2) Гражданского кодекса РФ.