Contrôler l'affichage de la navigation d'un site en rubriques/sous-rubriques

Salut

Je suis toute étourdie de buter encore sur des choses aussi simples.
Je voudrais afficher mon contenu "taxomisé" comme indiqué sur http://drupalfrance.com/node/109 soit la méthode 2.
D'un côté les rubriques. Dans un autre bloc les sous-rubriques.

J'ai créé un vocabulaire et des termes de cette façon :
vocabulaire
-term1 taxonomy/term/1
--term2 taxonomy/term/2
--term3 taxonomy/term/3
-term4 taxonomy/term/4
-term5 taxonomy/term/5

term1/term4 et term5 sont dans mes primary_link et je voudrais que les sous-termes présents et futurs s'affichent dans un bloc "Sous-rubriques" créé pour l'occasion.

J'ai collé ce code là :

<?php
$rub_path 
= 'taxonomy/term/1'; // Remplacer 'node/38' par le chemin de votre
                        // première rubrique (définie à l'étape 1)
$tid       = 1;        // Remplacer 56 par l'id de taxonomie
                        // correspondant à votre première rubrique.

// Si on n'est pas sur la rubrique en cours ni une sous-rub,
// on n'affiche rien.
if ($_GET['q'] != $rub_path && arg(0) != 'taxonomy') return;

// Si on est sur une sous-rubrique :
if (arg(0) == 'taxonomy' && arg(1) == 'term' && is_numeric(arg(2))) {
 
// et qu'elle ne dépend pas de la rubrique en cours, on n'affiche rien.
 
$parent = db_result(db_query('SELECT h.parent
            FROM {term_hierarchy} h WHERE h.tid = %d'
, arg(2)));
  if (
$parent != $tid) return;
}

// Si on est arrivé à ce stade, on est sur la rubrique
// en cours ou une de ses sous-rubriques : on affiche !
$items = array();
$result = db_query('SELECT t.tid, t.*, parent FROM {term_data} t
                    INNER JOIN {term_hierarchy} h ON t.tid = h.tid
                    WHERE parent = %d ORDER BY weight, name'
, $tid);
while (
$term = db_fetch_object($result)) {
 
$items[] = l($term->name, 'taxonomy/term/'.$term->tid);
}
print
theme('item_list', $items);
?>

Je pensais avoir compris le principe, et bien neni !

Help ? Merci ! :)


floown​@drupal.org
Posts: 266
Joined: 2007-06-09

Un petit [up] au passage, on m'en voudra pas après tout ces jours ;)

--

Un petit [résolu] dans le titre de vos sujets de forum ?
Vos avis sur Drupalfr.org
Drupalfr.org est aussi sur freenode à #drupalfr.org