[Résolu] Personnaliser le css d'un type de contenu

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,

Dans les feuilles de style css on utilise souvent .node pour personnaliser le contenu général d'une node.
Mais si je veux personnaliser seulement le contenu de type "article" par exemple... comment faire ?

Forum : 
Version de Drupal : 

Si tu as utilisé un thème de base genre Basic ou Zen pour commencer ton site il est possible qu'une classe .node-type-story ait été ajoutée à ton div de node. Si ce n'est pas le cas, utilise les fonctions de preprocess pour les générer à ta guise.

Tu as aussi la solution de créer un fichier de template par type de node. node-story.tpl.php par exemple.

Bon courage.

Ex de fonction de preprocess_node qui génére les classes.

function tontheme_preprocess_node(&$vars, $hook) {
  // Special classes for nodes
  $classes = array('node');
  if ($vars['sticky']) {
    $classes[] = 'sticky';
  }
  if (!$vars['status']) {
    $classes[] = 'node-unpublished';
    $vars['unpublished'] = TRUE;
  }
  else {
    $vars['unpublished'] = FALSE;
  }
  if ($vars['uid'] && $vars['uid'] == $GLOBALS['user']->uid) {
    $classes[] = 'node-mine'; // Node is authored by current user.
  }
  if ($vars['teaser']) {
    $classes[] = 'node-teaser'; // Node is displayed as teaser.
  }
  // Class for node type: "node-type-page", "node-type-story", "node-type-my-custom-type", etc.
  $classes[] = tontheme_id_safe('node-type-' . $vars['type']);
  $vars['classes'] = implode(' ', $classes); // Concatenate with spaces