Connexion S'inscrire

Connectez-vous

Login *
Mot de passe *
Se souvenir de moi

Créer un compte

Les champs marqués d'un astérisque (*) sont requis.
Nom *
Login *
Mot de passe *
Vérification mot de passe *
Email *
Vérification email *
Captcha *

Comment surcharger la vue d'un composant ou d'un module (Override)


Vous utilisez un composant Joomla dont l'ordre des élément ne vous convient pas ou que vous ne voulez pas afficher certains éléments, la surcharge (override) est la solution. En général, il est peu recommender de modifier le code d'un composant sauf si c'est le votre. Les modifications apporter dans le composant d'un tier peuvent disparaître après une mise à jour. Un avantage de la surcharge est que si un jour vous voulez revenir à la vue initiale, vous n'avez qu'à supprimer votre surcharge et tout redevient comment avant.

1 - Surcharger en utilisant l'administration de Joomla

Connectez-vous à l'administration de votre site Joomla avec un compte Super Admin. Cliquez sur le Menu Extensions>>Template>>Styles. Vous accéderez à la page qui liste les différents templates installés. Repérez le template que vous utilisez (il est marqué par une étoile orange).

Cliquez sur son nom dans la colonne Template (voir sur l'image ci-haut). Vous accéderez à la page de personnalisation de votre template.

1-1 Les différents onglets 

Éditeur: cet onglet nous permet de modifier le code du template dans l'administration de Joomla

Créer des substitutions: Cet onglet est celui qui nous intéresse, elle permet de créer de surcharger les vues de composant ou modules. 

Description du Template: affiche la description du template écrite pas son concepteur.

1 - 2 Création d'un override (substitution ou surcharge)

Cliquez sur l'onglet "Créer des substitutions" pour voir la liste des différents modules et composants. Pour créer une substitution d'un module, cliquez sur son nom et Joomla la créera automatiquement pour vous. Pour un composant, le premier clic va lister les différentes vues du composant et vous devez cliquez encore de nouveau sur la vue désirée pour que Joomla créé sa substitution.

1 - 2- Emplacement des fichiers de substitutions (Surcharge ou override)

Toutes les substitutions se trouvent dans un dossier nommé html qui se trouve lui même dans le dossier du template. Donc si on substitue la vue d'article (qui affiche chaque article de façon singulière), les fichiers de vue se trouveront dans le dossier: html/com_content/article/; normalement vous y verrez 2 fichiers "default.php" et "default_links.php". Cliquez sur l'onglet "Éditeur" et sur le dossier html accéder aux fichiers de substitution. Vous pouvez désormais modifier le html des fichiers de substitutions ou même y ajouter du Javascript. Dès que Joomla veux afficher un composant ou un module, il vérifie s'il existe une substitution. Si oui il utilisera les fichiers de substitution, sinon il utilisera les fichiers de vues du composant ou du module.

2 Surcharger en accédant aux dossiers

Allez dans le dossier "templates" à la racine de votre site Joomla et ensuite entrez  dans le dossier de votre template (exemple protostar). S'il n'existe pas un dossier "html" dans votre dossier de template, créez en un. Entrez dans le dossier html.

2 - 1 Surcharger un module 

Pour surcharger la vue d'un module, créer un dossier du même nom que le module exemple: mod_custom. ensuite copier le fichier de vue de ce module dans le dossier créer. Le fichier normal de la vue du module custom se nomme "default.php" et se trouve ici:  modules/mod_custom/tmpl/default.php. copier le fichier default.php et coller le dossier mod_custom que vous venez de créer dans templates/le_nom_de_votre_template_ex_protostar/html/mod_custom. Ouvrez le fichier avec un Éditeur de code et apportez les modifications désirées sur le code html. Vous pouvez évidement y ajouter du javascript.

2 - 2 Surcharger un composant

Pour sucharger un composant, le procéder est le même que celui d'un module mais la seule différence est que pour le composant il faut créer un dossier du même nom que de vue avant d'y mettre le ou les fichier(s). Donc pour surcharger la vue d'article, voici les dossiers à créer html/com_content/article/. Les fichiers "default.php" et "default_links.php" à copier dans le dossier du composant se trouveront à  "components/com_content/views/article/tmpl". Copiez ces 2 fichiers et collez les dans le dossier article: templates/votre_template/html/com_content/article/. Vous pouvez maintenant ouvrir ces fichiers et modifier le code html et sauvegarder.

3 Conclusion

Voilà vous savez désormais comment substituer une vue d'un composant ou d'un module Joomla sans modifier l'originale.

NB: si vous modifier une vue de formulaire, ne renommer pas le nom (propriété name) des éléments du formulaire parce que le code php qui sera roulé en arrière pour la sauvegarde n'a pas été conçu pour de tel changement. Donc les valeurs risquent de ne plus être sauvegardées. Pareil si vous rajoutez de nouveaux éléments au formulaire.

 


  • Dernière modification le lundi, 05 décembre 2016 05:14
  • 1067
Docteur Joomla

Après plus de 10 ans d'expérience en Joomla, je lance ce Blog pour partager mes connaissances avec les autres développeurs Joomla.

Media