Écrit par LaboRouge Le

Drupal 7 : ajouter la signature sur Node

Lors du paramétrage des comptes, il est possible de définir une "signature" pour chaque utilisateur. Par défaut, celle-ci s'affiche avec les commentaires de l'utilisateur.

Mais Drupal ne prévoit pas d'ajouter cette signature sur les "Nodes" lors de la création d'un contenu par l'utilisateur.

Avec quelques lignes de code le problème est résolu :

  • Modifier le fichier template.php de votre thème.
  • Ajouter ces lignes de codes (ou insérer les dans la fonction si elle est déja présente).
function NOMDUTHEME_preprocess_node(&$vars, $hook) {
  $account = user_load($vars['uid']);
  $vars['user_signature'] = '';
  if (isset($account->signature, $account->signature_format)) {
    $vars['user_signature'] = check_markup($account->signature, $account->signature_format);
  }
}

Nous venons de créer une nouvelle variable "$user_signature" qui sera désormais disponble dans node.tpl.php ou n'importe quel template de node (ex: node--blog.tpl.php).

Il ne reste plus qu'à ajouter cette variable à l'endroit où vous voullez qu'elle s'affiche :

<div class="user-signature">
  <?php print $user_signature; ?>
</div>

 

Portrait de LaboRouge
LaboRouge

Développeur basé sur la région de Rouen, je me suis spécialisé dans le développement de site web avec le C.M.S. Drupal.

0 Commentaire