Connexion | Nouveau compte Français

Vous êtes ici >>Blogs / Blog à Stef / Comment surcharger la template par défaut d'un module de tierce partie

Comment surcharger la template par défaut d'un module de tierce partie


By Stef - Posted on 14 August 2010

Un superbe module, mais la template ne convient pas ...

J'ai eu un problème à surmonter récemment. Après avoir installé un certain module, celui-ci incluait une template pour la formater qui ne convenait pas.

J'aurais eu comme option de modifier la template de ce module, mais j'ai opté pour une solution à base thématique.
Je ne souhaitais vraiment pas ré-écrire dans le code du module principal.
template.php

1
2
3
4
56
7
8
9
1011
function _phptemplate_variables($hook, $vars = array()) {
 switch ($hook) {
 case 'page':
 global $user;
 if (arg(0) == "page-ordinaire") { $vars['template_file'] = 'custom-template';
 }
 break;
 }
 return $vars;}

Ce code ne fonctionne pas: il ne sert ici que pour l'apprentissage de la surcharge de template. Avec cette fonction dans la template.php de votre thème, automatiquement toute page se nommant page-ordinaire sera présentée avec l'appuie de la template déclarée dans $var.

Remarquez qu'il est possible de faire l'aiguillage selon diverses conditions, arg(0), arg(1), is_front(), etc.

Drupal étant ce qu'il est, il y a évidemment plusieurs moyens de faire le même scénario. Par un hook du module, mais c'est pour un autre billet!


Température/Mtl

Montreal / Pierre Elliot Trudeau International Airport, Que

Part. nuageux
  • Part. nuageux
  • Température: 14 °C
  • Vent: SSW, 7.4 km/h
  • Pression: 1011 hPa
  • Humidité rel.:82 %
  • Visibilité: 24.1 km
  • Lever du Soleil: 04:13 -0500
  • Coucher soleil: 19:31 -0500
En date du
Sun, 05/28/2017 - 02:00