Submitted by davidm on
Je suis en train de chercher un moyen de faire un override de page.tpl.php pour un type de noeud. En effet je veux afficher la valeur d'un champs CCK à côté du title...
J'ai trouvé ici un code destiné à Drupal 5 utilisant _phptemplate_variables qui est dépréciée dans D6 :
<?php
// Add additional template suggestions
function _phptemplate_variables($hook, $vars) {
switch ($hook) {
case 'page':
// Add page template suggestions based on node type, if we aren't
editing the node.
if ($vars['node'] && arg(2) != 'edit') {
$vars['template_files'][] = 'page-'. $vars['node']->type;
}
break;
}
return $vars;
}
?>
Question : est-ce que quelqu'un a déjà fait ce genre de chose pour D6 et si non comment ré-écrire ce bout de code pour D6 ?
Merci !
C'est très similaire... le
Permalien Soumis par Damien Tournoud le 30 Avril, 2009 - 12:34
C'est très similaire... le code suivant devrait fonctionner :
Merci Damien ! Entre temps
Permalien Soumis par davidm le 30 Avril, 2009 - 12:42
Merci Damien !
Entre temps je me suis acharné à chercher et bien enfoui dans les résultat Google j'ai trouvé un autre bout de code :
function phptemplate_preprocess_page(&$variables) {
// IF THIS IS NOT WORKING BE SURE TO CLEAR THE THEME REGISTRY.
// FAILURE TO DO SO WILL NOT ALLOW THIS FUNCTION TO BE CALLED.
if($node = menu_get_object()) {
$variables['node'] = $node;
$suggestions = array();
$template_filename = 'page';
$template_filename = $template_filename . '-' . $variables['node']->type;
$suggestions[] = $template_filename;
$variables['template_files'] = $suggestions;
}
}
Le code vient d'ici : http://drupal.org/node/249726
Je vais essayer les deux, mais le tien est plus économe :)
To code marche parfaitement,
Permalien Soumis par davidm le 30 Avril, 2009 - 13:02
To code marche parfaitement, celui que j'ai recopié ci-dessus depuis drupal.org par contre me donne une belle page blanche (?) Je précise que j'ai bien nettoyé le cache...