Changer la class d'une rubriques dans un menu

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour à tous,

Voila je suis en train de faire mon portfolio et j'aimerais mettre un effet javascript sur mon menu. Je m'explique :

- J'ai un menu vertical
- Pour chaque rubrique du menu, j'aimerais que lorsque l'on passe la souris dessus, le logo change de couleur
- Là n'est pas mon problème (^^ je sais je sais...)
- Voici mon menu :

"

"

- Comme vous pouvez le constater, mes rubriques Video et Marketing possèdenet la même class.

- Ma question (enfin ;)), Comment pui-je faire pour modifier ces class, un module ?

Merci d'avance à tous ...

Forum : 
Version de Drupal : 

Je viens de voir que ma partie sur mon menu ne correspondait pas du tout à ce que j'ai voulu marqué.

Edit :

Voici mon menu :

ul class="menu"

li class="leaf first">a href="/productions" title="Graphic design" - GRAPHIC DESIGN/a/li

li class="leaf">a href="/productions/programming" title="Programming">- PROGRAMMING/a>/li

li class="leaf">a href="/productions/video" title="Video">- VIDEO/a>/li

li class="leaf last">a href="/productions/marketing" title="Marketing">- MARKETING/a>/li
/ul

PS : J'ai enlevé les "<" et ">" pour que l'html ne soit pas interprété. Si y a une autre solution ...

Tout d'abord désolé pour le retard de réponse mais je suis un peu pris en ce moment.

oui en gros c'est ca, sauf que pour chaque rubrique, je voudrais une nouvelle classe, car en fait je voudrais changer la couleur de quelques éléments de mon site suivant la rubrique choisie.

Merci pour vos réponses.

Dans ton template.php, tu peux surcharger la function theme_links comme suit :

function tonTheme_links($links, $attributes = array('class' => 'links')) {
  global $language;
  $output = '';

  if (count($links) > 0) {
    $output = '<ul'. drupal_attributes($attributes) .'>';

    $num_links = count($links);
    $i = 1;

    foreach ($links as $key => $link) {
      $class = $key;

      // Add first, last and active classes to the list of links to help out themers.
      if ($i == 1) {
        $class .= ' first';
      }
      if ($i == $num_links) {
        $class .= ' last';
      }
      if (isset($link['href']) && ($link['href'] == $_GET['q'] || ($link['href'] == '<front>' && drupal_is_front_page()))
          && (empty($link['language']) || $link['language']->language == $language->language)) {
        $class .= ' active';
      }
      $class .= ' ico-'. $i ;
      $output .= '<li'. drupal_attributes(array('class' => $class)) .'>';

      if (isset($link['href'])) {
        // Pass in $link as $options, they share the same keys.
        $output .= l($link['title'], $link['href'], $link);
      }
      else if (!empty($link['title'])) {
        // Some links are actually not links, but we wrap these in <span> for adding title and class attributes
        if (empty($link['html'])) {
          $link['title'] = check_plain($link['title']);
        }
        $span_attributes = '';
        if (isset($link['attributes'])) {
          $span_attributes = drupal_attributes($link['attributes']);
        }
        $output .= '<span'. $span_attributes .'>'. $link['title'] .'</span>';
      }

      $i++;
      $output .= "</li>\n";
    }

    $output .= '</ul>';
  }

  return $output;
}

Ici, j'ai rajouté cette ligne

$class .= ' ico-'. $i ;

Ca te donne pour chaque ligne, la classe suivante :

  • ico-1
  • ico-2
  • ico-3
  • ico-4