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

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

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

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

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

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

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

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

    Спасибо!

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

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

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

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

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

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

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

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

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

    Спасибо.

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

  • Эд
    Эд
    09 Февраля 2012, 20:04
     ↑  +1  ↓     ответ

    Делал первый свой модуль) но возникла проблема. Сделал всё как написано выше, 10 раз перепроверял, всё верно, но когда устанавливаю модуль на сайт надписи Hello World не появляется. Быть может проблема в том, что виндовс нормально не генерирует PHP коды в файл и они не работают? (в конде кроме HTML мало что понимаю поэтому прошу простить если написал чушь)) Заранее спасибо ;-)

    • Музыка
      Музыка
      12 Сентября 2012, 12:01
       ↑  0  ↓     ответ

      Произошло тоже самое, просто забыла выставить, что модуль опубликован.

      Автору статьи большое спасибо за такие подробные статьи. Все понятно и все работает как надо.

  • Spot
    Spot
    13 Февраля 2012, 18:47
     ↑  0  ↓     ответ

    ... В панели управления Расширения - Менеджер модулей - Новый найдите свой модуль, он будет называться testmodule...

    а у меня не появляется testmodule

  • Spot
    Spot
    13 Февраля 2012, 19:16
     ↑  +2  ↓     ответ

    разобрался, в Joomle 1.7 нужно нажать найти в менеджере расширений

  • Артур
    Артур
    21 Октября 2012, 05:21
     ↑  0  ↓     ответ

    При установке модуля и замене текста "Hello world" на "Привет мир" отображаются ????????. Почему так? Кодировка стоит UTF-8.

  • Сергей
    Сергей
    05 Мая 2013, 14:29
     ↑  +1  ↓     ответ

    Большое спасибо за прекрасный пример!

  • Sivik
    Sivik
    09 Января 2015, 22:31
     ↑  +4  ↓     ответ

    JInstaller: :Install: Не найден установочный XML-файл Joomla

    как с этим бороться? облазил весь инет, ответа так и не нашёл.

  • Иван
    Иван
    21 Марта 2016, 18:53
     ↑  +2  ↓     ответ

    Не работает, выдает ошибку на joomla 3.

  • читатель
    читатель
    27 Февраля 2017, 01:49
     ↑  0  ↓     ответ

    Дебилы. Это для версии 1.5. А Вы куда его прете? Там же написано. Читать хотя бы цыфры надо.

  • meloset medplus
    meloset medplus
    23 Июня 2018, 00:38
     ↑  0  ↓     ответ

    meloset medplus premature ejaculation cure acyclovir 400 mg tablet atorvastatin 80 mg

    Hi there mates, its great post on the topic of teachingand fully defined, keep it up all the

    time. scabie mite

  • minecraft
    minecraft
    25 Марта 2019, 11:56
     ↑  0  ↓     ответ

    Having read this I thought it was really enlightening.

    I appreciate you finding the time and energy to put this

    content together. I once again find myself spending a lot of time both reading and leaving comments.

    But so what, it was still worthwhile!

  • minecraft
    minecraft
    26 Марта 2019, 00:09
     ↑  0  ↓     ответ

    Can I simply just say what a comfort to discover somebody who genuinely understands what they are discussing

    online. You definitely realize how to bring an issue

    to light and make it important. A lot more people must check this out and understand this side of your story.

    I was surprised you are not more popular since you definitely possess

    the gift.

  • minecraft
    minecraft
    30 Марта 2019, 06:37
     ↑  0  ↓     ответ

    Heya i'm for the first time here. I came across this board and I find It really useful & it helped me out

    a lot. I'm hoping to present one thing back and help others like you helped

    me.

  • minecraft
    minecraft
    25 Апреля 2019, 23:20
     ↑  0  ↓     ответ

    Fine way of explaining, and good paragraph to obtain data regarding my presentation topic, which i am

    going to deliver in college.

  • minecraft
    minecraft
    30 Апреля 2019, 14:45
     ↑  0  ↓     ответ

    Spot on with this write-up, I absolutely believe that this amazing site

    needs much more attention. I'll probably be returning to read through more, thanks for the information!

  • how to get help in windows 10
    how to get help in windows 10
    27 Мая 2019, 10:06
     ↑  0  ↓     ответ

    What's up friends, how is everything, and what you would like to say on the topic of this article, in my view its in fact awesome for me.

  • plenty of fish dating site
    plenty of fish dating site
    12 Ноября 2019, 16:20
     ↑  0  ↓     ответ

    Hello my family member! I wish to say that this article is awesome, great written and come with approximately all vital infos.

    I'd like to see extra posts like this .

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




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

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