Для создания рабочего модуля нам необходимо три файла:
1)Файл, содержащий общую информацию о модуле: имя модуля, права доступа к нему, подкатегории и прочее. Его мы расположим в дирректории includes/ucp/info.
2)Файл, в котором будет находится непосредственно код модуля. Его мы расположим в дирректории includes/ucp/.
3)Файл шаблона, в котором будет находиться текст «HelloWorld!». Его мы расположем в дирректории текущей темы оформления. Например, для темы prosilver мы расположим шаблон в styles/prosilver/template/.
Шаг первый
Создадим файл ucp_hello.php, расположенный в дирректории includes/ucp/info, и содержащий информацию о модуле:
Код: Выделить всё
< ?php
class ucp_hello_info
{
// Данная функция возвращает массив, содержащий
// информацию о текущем модуле.
function module()
{
return array(
// Имя файла основного модуля.
'filename' => 'ucp_hello',
// Название модуля.
// В рабочих модулях указывается языковая переменная, которая впоследствии заменяется
// на текст соответствующего языка.
'title' => 'Привет, мир!',
// Версия модуля.
'version' => '1.0.0',
// Список подразделов этого модуля.
// Определим подраздел main, выводящий строчку "HelloWorld"
'modes' => array(
'main' => array(
// Заголовок подраздела.
'title' => 'Вывод строки',
// Необходимые привилегии для доступа к этому подразделу.
// Если отсутствуют, то используются привилегии для доступа
// к UCP(User Control Panel).
'auth' => '',
// Категория, в которую входит этот подраздел.
'cat' => array('UCP_HELLO')
),
),
);
}
// Данная функция вызывается при установке модуля в
// администраторской панели.
// В этом месте Ваш модуль может создавать необходимые
// ему файлы, таблицы в базе данных и прочие действия.
function install()
{
}
// Эта функция вызывается при деактивации Вашего модуля
// в администраторской панеле.
// Позаботьтесь, пожалуйста, чтобы Ваш модуль не оставлял
// после себя никакого мусора в системе.
function uninstall()
{
}
}
?>
Создадим второй файл ucp_hello.php, расположенный в дирректории includes/ucp/, содержащий непосредственно сам код модуля:
Код: Выделить всё
< ?php
class ucp_hello
{
// Функция, вызываемая ядром phpBB 3
function main($id, $mode)
{
global $template;
// Параметр $mode - это имя подраздела,
// который запрашивает пользователь.
switch ($mode)
{
// У нас есть только один подраздел: main.
case 'main':
// Устанавливаем заголовок страницы
page_header('HelloWorld!');
// Указываем, какие файлы шаблонов нужно подключать.
$template->set_filenames(array(
'body' => 'helloworld.html',
));
// Выводим
page_footer();
// Следует заметить, что вот так использовать языковые
// конструкции на английском, русском и т.д. прямо в
// коде модуля можно только индусам.
// Всем остальным это категорически запрещается.
// Я Вам показал такой код лишь для простоты понимания.
// В рабочем модуле на этом месте обычно выполняются
// какие либо действия, и затем результаты работы модуля
// передаются в шаблон, который уже и занимается выводом
// информации пользователю, подключая необходимые
// языковые файлы.
break;
}
}
}
?>
Теперь осталось создать файл шаблона, содержащий нашу строку «HelloWorld». Для этого нужно перейти в дирректорию, где расположены шаблоны Вашей текущей темы оформления.
Например, для темы оформления prosilver нужно перейти в дирректорию styles/prosilver/template/. Создайте в этой дирректории файл helloworld.html со следующим содержимым:
Код: Выделить всё
<!-- INCLUDE overall_header.html -->
<h2>The HelloWorld page</h2>
<div class="panel">
<div class="inner">
<div class="content">
HelloWorld!
</div>
</div>
</div>
<!-- INCLUDE overall_footer.html -->
Это вызвано тем, что наш модуль еще не активирован в администраторском аккаунте. Для его активации необходимо перейти в вкладку Система, и в левом меню в подразделе Управления модулями выбрать пункт Личный раздел:
Теперь нужно добавить наш модуль. Для этого введите его название. Например, «Привет, мир!»:
После этого необходимо лишь отредактировать параметры модуля следующим образом:
И нажать кнопку Отправить.
Шаг четвертый
Поздравляю! Вы успешно прошли все этапы создания модуля для phpBB 3.
Нам теперь осталось лишь посмотреть на результаты его работы. Для этого перейдите по адресу http://ваш_сайт.com/ucp.php?i=hello.
Если Вы все сделали правильно, то должны увидеть приблизительно следующее:
Всем удачи