Учебники

Joomla — Создание модулей

В этой главе мы будем изучать создание модулей в Joomla. Модули — это гибкие, легкие и полезные расширения для рендеринга страниц.

Создать Модули

Ниже приведены простые шаги по созданию модулей в Joomla.

Шаг 1 — Создайте папку с именем mod_firstmodule в папке Joomlamodules .

Joomla Создать Модули

Шаг 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 — Перейдите к ExtensionExtension Manager в администраторе Joomla, и вы получите следующий экран. Здесь вы можете загрузить и установить созданные вами файлы модуля, т.е. папку mod_firstmodule . Нажмите « Выбрать файл» и выберите созданный файл модуля (сжатый). Нажмите кнопку « Загрузить и установить» , чтобы загрузить файл модуля.

Joomla Создать Модули

Шаг 8 — После загрузки и установки перейдите в Диспетчер модулей и нажмите Новый . Там вы можете просмотреть созданный вами файл модуля, как показано ниже.

Joomla Создать Модули

Шаг 9 — Вы можете назначить этот модуль аналогично другим модулям, а затем опубликовать его.