Pisanie modułu joomla 2.5
Dzisiaj pokażę jak napisać moduł joomla prostyW skład modułu joomla wejdą
-mod_helloworld.php (silnik całego modułu)
-mod_helloworld.xml (specyfikacja konfiguracja ustawienia)
-helper.php (klasy pomocnicze umożliwiaja ładowanie potrzebnych ninformacji wyświetlanych w module)
-tmpl/default.php ( to jest szablon modułu .Zbierze informacje które wygenerował moduł i pokaże je w odpowiedniej formie)
index.html 2 razy w folderze głównym i folderze tmpl gdzie mamy plik default.php
Definiujemy klasę pomocniczą:
$hello = modHelloWorldHelper::getHello( $params );Tworzymy mod_helloworld.php :
<?phpTworzymy helper.php plik klasa pomocnicza służaca do pobierania danych wyświetlanych w module klasa będzie posiadała jedna metodę getHello().
/**
* Adam Kleszewski projektowanie stron internetowych "joomla tworzenie modułu"
* Hello World! Module Entry Poin
* @package Joomla.Tutorials
* @subpackage Modules
* @link http://dev.joomla.org/component/option,com_jd-wiki/Itemid,31/id,tutorials:modules/
* @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.
*/
// no direct access /zatrzymujemy bezpośredni dostęp do strony
defined( '_JEXEC' ) or die( 'Restricted access' );
// dołanczamy funkcje syndykatów tylko raz
require_once( dirname(__FILE__).DS.'helper.php' );
$hello = modHelloWorldHelper::getHello( $params );
require( JModuleHelper::getLayoutPath( 'mod_helloworld' ) );
?>
i zwróci komunikat ‘Hello, World’ O ile taki sobie ustawimy w komunikacie
<?phpTworzymy folder tmpl a w nim plik default.php Plik default.php jest szablem , który wyświetla dane wyjściowe moduł.
/**
* Adam Kleszewski projektowanie stron internetowych "joomla tworzenie modułu"
* Helper class for Hello World! module
* @package Joomla.Tutorials
* @subpackage Modules
* @link http://dev.joomla.org/component/option,com_jd-wiki/Itemid,31/id,tutorials:modules/
* @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
{
/**
* Pobiera wiadomość 'Hello, World!'
*
* @param array $params Obiekt zawierający parametry modułu
* @access public/dostęp publiczny
*/
public static function getHello( $params )
{
return 'Hello, World!<br>TO JEST FAJNY MODUŁ<br>Jego zadaniem jest pokazywanie treści uprzednio zefiniowanej w procesie tworzenia';
}
}
?>
Ważnym uwaga plik szablonu ma taki sam zakres jak w pliku mod_helloworld.php. Oznacza to, że zmienna $hello mogą być zdefiniowane w pliku mod_helloworld.php i następnie używane w pliku szablonu, bez żadnych dodatkowych oświadczeń lub wywołania funkcja
<!--Adam Kleszewski projektowanie stron internetowych "joomla tworzenie modułu"-->Tworzymy mod_helloworld.xml Mod_helloworld.xml jest używana do określenia, które pliki trzeba skopiować Instalator jest używany przez Menedżera moduł, aby określić, które parametry są używane do konfigurowania modułu. Inne informacje o module określone są również w tym pliku.
<?php // no direct access - Zatrzymujemy bezposredni dostęp do strony
defined( '_JEXEC' ) or die( 'Restricted access' ); ?>
<?php echo $hello; ?>
<?xml version="1.0" encoding="utf-8"?>
<extension type="module" version="2.5.0" client="site" method="upgrade">
<name>Hello, World!</name>
<author>adam kleszewski</author>
<authorEmail>adam_kleszewski@wp.pl<;/authorEmail>
<authorUrl>www.strony.internetowe.jupe.pl</authorUrl>
<creationDate>06.2013</creationDate>
<copyright>(C) 2013 kleszewski</copyright>
<license>GNU/GPL http://www.gnu.org/copyleft/gpl.html</license>
<version>1.0.2</version>
<description>Moduł wyswietla proty tekst</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>
Brak komentarzy:
Prześlij komentarz