Blog arrow Technologie arrow Créer ses propres modules pour joomla


Créer ses propres modules pour joomla

Version imprimable Suggérer par mail
Technologie - Joomla
Écrit par Serge Boué   
11-11-2007

La création de module pour joomla est une opération facile. Elle est bien utile quant il s'agit d'insérer le code javascript donnés par les sites social bookmarking ou les marqueurs de page des sites de mesure d'audience.

L'un des avantages du CMS Joomla! est sa modularité. En effet, il est très simple d'ajouter de nouvelles briques fonctionnelles pour étendre l'offre de services d'un site web.
La communauté des développeurs ou des éditeurs de logiciels proposent de nombreux éléments applicatifs fiables et performants. Mais il est aussi possible de développer facilement ses propres briques (module, composant, mambot) pour créer de nouvelles fonctionnalités ou enrichir celles existantes.

Par exemple, sur mercatic.fr, le tableau présentant les trois derniers mots du glossaire est un module spécifique réalisé en s'appuyant sur le composant glossary de remository.

Pour se familiariser avec la création de module, le blog Lanat'z concept présente un article très clair qui peut aisément être mis en application. Il suffit de deux fichiers capsulés dans un fichier zip pour créer et déclarer un module.
Le premier fichier est le code php de la fonctionnalité. Le second est un fichier Xml de paramétrage.

Mais l'un autre intérêt des modules réside dans la possibilité d'insérer facilement des scripts javascript dans un site web existant.
De nombreux boutons ou widget « web 2.0 » comme « addthis.com », « criteo »...s'installent en collant un code javascript dans le template du site. De même pour les services d'analyses de consultation, les marqueurs de page de Google analytics ou de Xiti nécessitent l'ajout dans le corps du site de fonctions javascript.

Ces insertions peuvent être faites en modifiant directement le template d'un site. Le template d'un site défini sa charte graphique. Cependant avec cette solution, Joomla perd de sa modularité. En effet, le changement de position d'une fonctionnalité sur une page devient plus contraignant.
De même, le changement de charte graphique imposera de modifier le nouveau template.

La création de modules dédiés offre une solution souple pour ajouter ces petits codes javascript à un site web.

Il suffit de créer un module pour chaque boutons ou widget.
Par exemple, voici l'implémentation du bouton « bookmark » de addthis.com sur mercatic.fr

Le premier fichier reprend intégralement le code fourni par addthis.com. La ligne php a été ajoutée pour des raisons de sécurité afin de bloquer l'appel par une adresse url du module.

<?php 
// no direct access
defined( '_VALID_MOS' ) or die( 'Restricted access' );
?>
<script type="text/javascript">
  addthis_url    = location.href;  
  addthis_title  = document.title; 
  addthis_pub    = 'nom_du_site';    
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>

Le second fichier décrit le module. Il est utilisé par Joomla! pour identifier le module.

<?xml version="1.0" encoding="iso-8859-1" ?> 
<mosinstall type="module" version="1.0.0">
 <name>Add this Bookmark</name>
 <author>Mercatic</author>
 <creationDate>Novembre 2007</creationDate>
 <license>Mercatic</license>
 <copyright>(C) 2007 Mercatic</copyright>
 <authorEmail></authorEmail>
 <authorUrl>www.mecatic.fr</authorUrl>
 <version>1.0.0</version>
 <description>Ce module affiche le bouton bookmark de addthis.com</description>
 <files>
 <filename module="mod_addthisbookmark">mod_addthisbookmark.php</filename>
 </files>
 <params />
</mosinstall>

Ces deux fichiers doivent être zippés.

L'ajout du module se fait, comme d'habitude, par le menu « installation » et le positionnement dans le site par le menu « module du site »de l'interface d'administrateur.

 
< Précédent