RSS   Twitter   Copiny   Copiny   Copiny
Нашел ошибку? 

Выдели фрагмент текста с ошибкой или неточностью и нажми Ctrl+Enter!

Модуль Joomla «Hello World!»

Попробуем создать простейший модуль Joomla. Для этого создадим в папке модулей, директорию mod_testmodule (testmodule - это имя нашего расширения). Внутри новой папки создадим два файла mod_testmodule.php и mod_testmodule.xml

/modules/mod_testmodule/mod_testmodule.xml
/modules/mod_testmodule/mod_testmodule.php

В mod_testmodule.xml поместим следующий код

<?xml version="1.0" encoding="utf-8"?>
<install type="module" version="1.5.0">
    <name>testmodule</name>
    <author>me</author>
    <version>1.0</version>
    <description>TEST example by joomla-book.ru</description>
    <files>
        <filename module="mod_testmodule">mod_testmodule.php</filename>
    </files>
</install>

На самом деле в этом файле может храниться очень много полезной и не очень информации, дополнительные настройки, локализации и прочее. Но в качестве простого примера, мы упростим xml почти до минимума. Здесь наc интересуют имя модуля, и список необходимых файлов (перечисляются внутри ).

А php-файл должен в свою очередь содержать следующий текст

<?php
    print "Hello world!";
?>

Теперь модуль готов к использованию. В панели управления Расширения - Менеджер модулей - Новый найдите свой модуль, он будет называться testmodule, и установите в желаемою позицию. Все бы хорошо, но возникает серьезная проблема, наш модуль может быть запущен без Joomla по прямой ссылке

http://myjoomla/modules/mod_testmodule/mod_testmodule.php

Чтобы этой неприятности не происходило, модифицируем наш исполняемый php файл.

<?php
    defined('_JEXEC') or die('Restricted access');
    echo JText::_('Hello World!');
?>

Первая строка проверяет глобальную константу, её объявление гарантирует нам что модуль запущен самой Joomla а не по прямой ссылке. JText - попытается найти перевод на текущий язык (у вас скорее всего на русский) среди файлов локализаций, в крайнем случае вернет то что было передано в него.

Схема расположения элементов модуля Joomla

Схема простейшего модуля Joomla

Схема создана Михаилом

Смотрите также:
Комментарии (6) Добавить комментарий
  • Сергей
    Сергей
    10 Декабря 2011, 17:58
     ↑  +2  ↓     ответ

    Для какой версии joomla эта статья ?

    • Евгений
      Евгений
      11 Января 2012, 17:46
       ↑  +1  ↓     ответ

      Там же чётко написано, в файле XML: version="1.5.0"

      Хотя, подозреваю, что данный модуль будет хорошо работать и в версии 1.6/1.7.

  • Андрей
    19 Декабря 2011, 23:45
     ↑  0  ↓     ответ

    Спасибо!

    С плагином от сапы пол дня мучился, Ваш завелся сам.

    И прошу - прорекламируйтесь как ниб - второй раз боюсь не найти -)))

  • Денис
    25 Декабря 2011, 04:26
     ↑  0  ↓     ответ

    Спасибо огромное за этот сайт! Очень много систематизированной полезной информации!

  • саша
    саша
    22 Января 2012, 09:50
     ↑  0  ↓     ответ

    Респект и уважуха! Спасибо огромное за сайт.

  • Максимка
    Максимка
    31 Января 2012, 19:16
     ↑  0  ↓     ответ

    Данная шняга будет работать и на версии 1.7)), несмотря на "version="1.5.0".

    Автору огромное спасибо. Для новичка, вроде меня - статья гуд.

    Спасибо.

    Желаю всем удачи и процветания

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




* обязательно для заполнения

1 введенный почтовый адрес используется только для обратной связи при ответах в комментариях и сервиса gravatar.com
.