Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.
АвторСообщение

 Сообщение Создание простого модуля HelloWorld 
#1 

Аватар пользователя

Внимание!!!Приведенный ниже код сохраняйте в UTF-8!

Для создания рабочего модуля нам необходимо три файла:


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 -->
 


Все, на данный момент наш модуль полностью готов к использованию. Но если мы попробуем посмотреть его результат работы по адресу http://ваш_сайт.com/ucp.php?i=hello мы столкнемся со следующей проблемой:

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

Теперь нужно добавить наш модуль. Для этого введите его название. Например, «Привет, мир!»:

После этого необходимо лишь отредактировать параметры модуля следующим образом:

И нажать кнопку Отправить.

Шаг четвертый

Поздравляю! :bra_vo: Вы успешно прошли все этапы создания модуля для phpBB 3.

Нам теперь осталось лишь посмотреть на результаты его работы. Для этого перейдите по адресу http://ваш_сайт.com/ucp.php?i=hello.

Если Вы все сделали правильно, то должны увидеть приблизительно следующее:


Всем удачи :(


_________________
Подпись:
Я бы изменил мир, но Бог не дает исходников...
Жизнь - это как компьютерная игра.
Сюжетная линия так себе, за то какая графика...


Теги темы
Создание простого модуля HelloWorld
          Вернуться наверх  
 

#2 

Аватар пользователя

Отлично, полезная инфа


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 

#3 

Аватар пользователя

Рад стараться!!!


_________________
Подпись:
Я бы изменил мир, но Бог не дает исходников...
Жизнь - это как компьютерная игра.
Сюжетная линия так себе, за то какая графика...

          Вернуться наверх  
 
 
Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.


Дополнительные возможности

  Похожие темы  Автор  Ответов  Просмотров  Последнее сообщение 
Аватар пользователя интеграция модуля
интеграция модуля статистики клана на форум

hunterkomp

11

353

Аватар пользователя

04 окт 2012, 21:45

DeaDRoMeO

Аватар пользователя Создание bb кода
создание, описание и применение bbcode

белк

28

2496

Аватар пользователя

27 май 2015, 17:11

белк

Случайный аватар. Пользователю рекомендуется загрузить свой аватар в Настройках профиля Создание, продвижение и оптимизация сайта

Evgenij83

1

277

Аватар пользователя

22 июн 2017, 11:34

Atlas

Оставить свой комментарий

Поделиться темой с помощью

Ссылки на тему

Прямая ссылка:
BB-код для форумов, сайтов, блогов:
HTML ссылка:
 


cron

Самая неформальная поддержка phpBB :P