Aujourd'hui il faut penser à migrer son site Joomla! 1.5 et le passer en Joomla! 3. Il existe des tutoriels pour la migration de votre site comme celui de Simon Grange :
Migration de Joomla 1.5 vers Joomla 3.x
Et concernant les templates ? Hé bien on peut aussi migrer son template, avec quelques modifications pas très compliquées.
Librairie mootools (javascript)
Tout au début du fichier 'index.php' on peut trouver l'appel à la librairie javascript Mootools. Dans ce cas il faut le mettre à jour.
Joomla! 1.5
JHTML::_('behavior.mootools');
Joomla! 3
JHTML::_('behavior.framework', true);
Fichier d'installation
Le plus gros des modifications se fait dans le fichier 'templateDetails.xml'. Il faut remplacer les balises d'installation, les paramètres et les appels aux fichier de langue.
Joomla! 1.5
Balises d'installation
<install version="1.5" type="template"> ... contenu du fichier ... </install>
DOCTYPE XML
<!DOCTYPE install PUBLIC "-//Joomla! 1.5//DTD template 1.0//EN" "http://www.joomla.org/xml/dtd/1.5/template-install.dtd">
Joomla! 3
Balises d'installation
<extension version="3" type="template" client="site"> ... contenu du fichier ... </extension>
DOCTYPE XML
<!DOCTYPE install PUBLIC "-//Joomla! 2.5//DTD template 1.0//EN" "http://www.joomla.org/xml/dtd/2.5/template-install.dtd">
Fichiers de langue
Les fichiers de langue permettent de traduire des termes insérés dans votre template dans plusieurs langues. Avec Joomla! 3 il y a quelques modifications, il faut créer une architecture de dossiers et fichiers spécifiques, ajouter un fichier .sys.ini qui sert à traduire les termes lors de la phase d'installation, et modifier les fichiers .ini en ajoutant des guillemets doubles aux termes traduits.
Dans le fichier 'templateDetails.xml' il faut modifier l'appel aux fichiers.
Joomla! 1.5
<languages> <language tag="en-GB">en-GB.tpl_MONTEMPLATE.ini</language> </languages>
Joomla! 3
<languages folder="language"> <language tag="en-GB">en-GB/en-GB.tpl_MONTEMPLATE.ini</language> <language tag="en-GB">en-GB/en-GB.tpl_MONTEMPLATE.sys.ini</language> </languages>
Au niveau de la structure de fichiers, dans Joomla! 3 il faut créer des répertoires spécifiques pour les fichiers de langue, par exemple pour l'anglais avec le tag 'en-GB' :
[NOMDUTEMPLATE]
|- language
|- en-GB
|- en-GB.tpl_NOMDUTEMPLATE.ini
|- en-GB.tpl_NOMDUTEMPLATE.sys.ini
Dans les fichiers .ini il faut également modifier la manière dont on écrit les traductions, mais aussi l'entête du fichier. Il faut remplacer les /* par des ;
Joomla! 1.5
/* * * @copyright Copyright (C) 2014 Cédric KEIFLIN alias ced1870 * http://www.template-creator.com * http://www.joomlack.fr * @license GNU/GPL * */
Joomla! 3
; @copyright Copyright (C) 2014 Cédric KEIFLIN alias ced1870 ; http://www.template-creator.com ; http://www.joomlack.fr ; @license GNU/GPL ; Double quotes in the values have to be formatted as "_QQ_"
Ensuite pour traduire les termes il faut les mettre entre guillemets double ".
Si on veut traduire des termes en utilisant des guillemets double, par exemple pour insérer du code html, il faut remplacer les " par "_QQ_".
Joomla! 1.5
TERME_A_TRADUIRE = <p style ="background:#efefef;">Mon texte traduit ici</p>
Joomla! 3
TERME_A_TRADUIRE = "<p style ="_QQ_"background:#efefef;"_QQ_">Mon texte traduit ici</p>"
Paramètres
Un autre changement qui intervient dans le fichier XML se trouve au niveau des paramètres. Les balises changent et certains nouveaux paramètres voient le jour.
Retrouvez la liste des paramètres sur le wiki :
http://docs.joomla.org/Form_field
Joomla! 1.5
<params> <param name=... paramètres spécifiques voir liste... /> ... </params>
Joomla! 3
<config> <fields name="params"> <fieldset name="advanced"> <field name=... paramètres spécifiques voir liste... /> ... </fieldset> </fields> </config>
Attention il y a un paramètre qui a changé, c'est celui qui permet de générer la liste des menus :
Joomla! 1.5
<param name="menutype" type="mos_menu" default="mainmenu" label="" description="" />
Joomla! 3
<field name="menutype" type="menu" default="mainmenu" label="" description="" />
Si votre template contient un dossier nommé 'html' c'est qu'il utilise des techniques de template override. Dans ce cas je vous conseille vivement de supprimer ce dossier pour votre première mise en ligne et de mettre à jour les fichiers qu'il contient en accord avec la nouvelle version de Joomla! 3. Il faut récupérer les fichiers Joomla! 3 de tous les composants qui sont overridés dans ce dossier et les modifier ensuite.