В этой главе мы будем изучать создание модулей в Joomla. Модули — это гибкие, легкие и полезные расширения для рендеринга страниц.
Создать Модули
Ниже приведены простые шаги по созданию модулей в Joomla.
Шаг 1 — Создайте папку с именем mod_firstmodule в папке Joomla → modules .
Шаг 2 — В папке mod_firstmodule создайте файл с именем «helper.php». Этот файл содержит имя класса в качестве помощника, он помогает отображать полученные данные в выходных данных модуля.
helper.php
<?php /** * Helper class for Hello World! module * * @package Joomla.Tutorials * @subpackage Modules * @link http://docs.joomla.org/J3.x:Creating_a_simple_module/Developing_a_Basic_Module * @license GNU/GPL, see LICENSE.php * mod_helloworld is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses. */ class ModHelloWorldHelper { /** * Retrieves the hello message * * @param array $params An object containing the module parameters * * @access public */ public static function getHello($params) { return 'Hello, World!'; } } ?>
Шаг 3 — Создайте файл с именем mod_helloworld.php . Это точка входа для модуля, которая выполняет процедуры инициализации, собирает необходимые данные и отображает выходные данные модуля, используя шаблон.
mod_helloworld.php
<?php /** * Hello World! Module Entry Point * * @package Joomla.Tutorials * @subpackage Modules * @license GNU/GPL, see LICENSE.php * @link http://docs.joomla.org/J3.x:Creating_a_simple_module/Developing_a_Basic_Module * mod_helloworld is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses. */ // No direct access defined('_JEXEC') or die; // Include the syndicate functions only once require_once dirname(__FILE__) . '/helper.php'; $hello = modHelloWorldHelper::getHello($params); require JModuleHelper::getLayoutPath('mod_helloworld'); ?>
Шаг 4 — Создайте файл mod_helloworld.xml . Этот файл содержит информацию о модуле. Этот XML-файл содержит информацию о файлах, которые должны быть установлены в Joomla для модуля.
файл mod_helloworld.xml
<?xml version = "1.0" encoding = "utf-8"?> <extension type = "module" version = "3.1.0" client = "site" method="upgrade"> <name>Hello, World!</name> <author>Tutorials Point</author> <version>1.0.0</version> <description>A simple Hello World! module.</description> <files> <filename>mod_helloworld.xml</filename> <filename module = "mod_helloworld">mod_helloworld.php</filename> <filename>index.html</filename> <filename>helper.php</filename> <filename>tmpl/default.php</filename> <filename>tmpl/index.html</filename> </files> <config> </config> </extension>
Шаг 5 — Создайте простой HTML-файл с именем index.html . Цель написания этого файла заключается в том, что созданные каталоги не должны просматриваться. Когда пользователь просматривает эти каталоги, отображается файл index.html. Вы даже можете оставить этот файл пустым.
index.html
<html> <body> Welcome to Tutorials Point!!!!! </body> </html>
Шаг 6 — Создайте папку с именем tmpl . Поместите файл default.php, как показано ниже, и index.html (созданный на шаге (5)) в папку tmpl . Файл default.php представляет собой шаблон, который отображает выходные данные модуля.
default.php
<?php /** * @package Joomla.Site * @subpackage mod_firstmodule * @copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; > <p>Hello World!!!!!!</p>
После того, как вы закончили создание всех этих файлов, сожмите полную папку mod_firstmodule .
Шаг 7 — Перейдите к Extension → Extension Manager в администраторе Joomla, и вы получите следующий экран. Здесь вы можете загрузить и установить созданные вами файлы модуля, т.е. папку mod_firstmodule . Нажмите « Выбрать файл» и выберите созданный файл модуля (сжатый). Нажмите кнопку « Загрузить и установить» , чтобы загрузить файл модуля.
Шаг 8 — После загрузки и установки перейдите в Диспетчер модулей и нажмите Новый . Там вы можете просмотреть созданный вами файл модуля, как показано ниже.
Шаг 9 — Вы можете назначить этот модуль аналогично другим модулям, а затем опубликовать его.