Atelier Développement Modules

Marc Studer (@garstud)

1. Comprendre et Coder ses 1ers modules

Note : Avez vous tous un serveur Local ou distant à votre disposition ? (bitnami, WAMP, ...)

Différent d’un composant ou plugin

Bloc applicatif s’affichant dans une position

Paramétres communs aux modules :

Assignation des menus, paramètres, paramètres avancées

Image pleine page

Un module est une extension

Structure d’un module :

Package installable : ZIP contenant les fichiers du plugin

2. Manifest XML

<?xml version="1.0" encoding="utf-8"?>
<extension type="module" version="3.1" client="site" method="upgrade">
    <name>mod_tpjday</name>
    <author>AFUJ</author>
    <creationDate>Mai 2018</creationDate>
    <copyright></copyright>
    <license>GNU General Public License version 2 or later; see LICENSE.txt</license>
    <authorEmail>mail@domain.fr</authorEmail>
    <authorUrl>www.joomladay.fr</authorUrl>
    <version>0.1.0</version>
    <description>Module simple pour le TP de l'atelier Module du JDay 2018 à Paris</description>
    <files>
        <filename module="mod_tpjday">mod_tpjday.php</filename>
        <filename>index.html</filename>
    </files>
</extension>

3. Script PHP

<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_tpjday
 *
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */
defined('_JEXEC') or die;
?>
Bonjour, bienvenue sur ce site, si vous avez un compte, 
<a href="index.php?option=com_users&amp;task=login">connectez vous</a>
,<br />
sinon <a href="index.php?option=com_users&amp;view=registration">inscrivez-vous</a>

4. Les TP simples

3 Travaux Pratiques :

  1. Module basic
  2. Module + tmpl
  3. Module + tmpl avec Framework Joomla

ZIP des TP : https://tinyurl.com/jday2018-mod1

5. Les TP avancés

2 Travaux Pratiques :

  1. Module + Helper
  2. Module + Helper SQL

ZIP des TP : https://tinyurl.com/jday2018-mod2