Actions

Comment substituer le rendu du noyau Joomla!

This page is a translated version of a page How to override the output from the Joomla! core and the translation is 100% complete.

Other languages:
български 4% • ‎Deutsch 100% • ‎English 100% • ‎español 100% • ‎français 100% • ‎Nederlands 100%

Vous pouvez souhaiter modifier la façon dont une extension Joomla! (par exemple, un composant ou un module, qu'il soit natif ou créé par un tiers) s'affiche sur votre site. Bien sûr, vous pouvez recoder l'extension à partir de zéro, mais peut-être est-ce un peu ambitieux pour vous ! Heureusement, il existe une autre façon de faire.

Le rendu standard de tout module ou composant Joomla! peut être substitué par l'ajout de code dans le répertoire html de votre template. Il est également possible de substituer deux aspects des fonctionnalités natives : le module chrome et la pagination.

Depuis Joomla 3.2, les substitutions peuvent être créées en utilisant le gestionnaire de templates Créer des substitutions

Ayez une longueur d'avance avec les substitutions

Si vous débutez en développement Joomla, il sera plus simple de commencer avec une vue existante et d'essayer de la modifier pour obtenir ce que vous souhaitez. Pour ce faire, faites une copie de la vue existante dans le répertoire html de votre template, puis modifiez la copie.

La structure de répertoire dont vous avez besoin est :

TEMPLATE_NAME/html/EXTENSION_NAME/VIEW_NAME/FILE_NAME.php

Par exemple, si vous voulez changer la façon dont la vue 'Article' affiche un article com_content, alors vous devez copier le fichier :

PATH_TO_JOOMLA/components/com_content/views/article/tmpl/default.php
dans
TEMPLATE_NAME/html/com_content/article/default.php

(vous remarquerez la légère différence dans la structure du répertoire)

De même, si vous voulez changer l'affichage du module mod_login, vous devez copier :

PATH_TO_JOOMLA/modules/mod_login/tmpl/default.php
dans
TEMPLATE_NAME/html/mod_login/default.php

Joomla! est nativement doté d'un template de frontend nommé Beez. Beez utilise les substitutions de template pour produire une mise en page sans table en vue d'avoir un balisage plus rapide, plus souple et sémantiquement correct. Pour voir comment cela est fait, dans votre installation Joomla, allez dans le répertoire template, vous y trouverez le template Beez. Dans ce répertoire, vous trouverez un répertoire nommé html.

L'ensemble de la structure du répertoire est comme suit :

/your_joomla/templates/Beez/html/

Si vous souhaitez essayer de modifier les overrides utilisés dans Beez, vous pouvez simplement copier et coller le répertoire html de Beez dans le répertoire principal de votre propre template. Cependant, si vous choisissez de créer vos propres fichiers d'override, vous devrez vous assurer qu'ils sont correctement installés dans votre template. Pour ce faire, vous devez ajouter le code suivant à votre fichier templateDetails.xml (entre les balises <files> et </files>) :

<folder>html</folder>

Le code ci-dessus fait savoir à l'installateur Joomla! qu'il y a des fichiers à extraire et qu'ils font partie intégrante du template.

Autres conseils

Vous pouvez remplacer les images natives de Joomla qui sont stockées dans le dossier /media/. Ajoutez une autre image avec le même nom dans votre dossier de template. Par exemple, le module de fil d'Ariane utilise une flèche orange qui est /media/system/images/arrow.png. Joomla utilisera votre version de remplacement si vous la placez dans : /templates/your_template_name/images/system/arrow.png.

Les substitutions de template sont presque illimitées. Elles vous permettent d'ajouter, de modifier et de supprimer les composants du rendu natif de Joomla. Le gestionnaire des templates peut être utilisé pour créer des fichiers de substitution prêts à être modifiés.

Remarque : sous Firefox, il existe un module nommé Firebug qui est utile pour naviguer dans la source d'une page HTML et trouver la correspondance avec le code PHP utilisé dans les substitutions de template. Pour plus d'informations, visionnez la vidéo gratuite sur la façon d'utiliser Firebug avec Joomla. Firebug est également disponible pour IE Firebug Lite.

Vous trouverez plus d'informations dans les ressources suivantes :

Advertisement