Je vous recommande d'utiliser template_preprocess_node () .
Ceci est un exemple de base pour D8
function YOUR_THEME_preprocess_node(&$variables) {
$variables['comment_count'] = $variables['node']->get('YOUR_COMMENT_FIELD')->comment_count;
}
Et puis vous pouvez l'utiliser dans votre node.html.twig
fichier comme ceci:
{{ comment_count }}
Un exemple de base en D6 est ci-dessous, vous pouvez le personnaliser à votre guise. Dans votre fichier template.php situé dans votre répertoire de thème, ajoutez quelque chose dans le sens de (en remplaçant YOURTHEME par le nom de votre thème):
function YOURTHEME_preprocess_node(&$variables) {
$nid = $variables['node']->nid;
$variables['num_comments'] = db_result(db_query('SELECT COUNT(cid) AS count FROM {comments} WHERE nid = %d', $nid)) . ' comment(s) on this node';
}
et enregistrez le fichier. Maintenant, dans node.tpl.php (ou tout modèle équivalent, node-mycontenttype.tpl.php, etc.), ajoutez simplement:
<?php print $num_comments; ?>
Partout où vous souhaitez que le nombre de commentaires soit localisé et enregistré. Videz le cache , puis affichez vos modifications.
Vous pouvez utiliser
$comment_count
dans node.tpl.php .la source
$comment_count
compte le nombre de commentaires visibles par l'utilisateur; si l'utilisateur actuel ne peut pas voir les commentaires, cette variable sera mise à zéro.$node->comment_count
Mise à jour, pour Drupal 7 votre requête sur template.php devrait ressembler à:
la source
Pour Drupal 8:
Maintenant dans page.html.twig:
Videz le cache, puis affichez vos modifications.
la source
Dans Drupal 8, utilisez-le directement dans votre modèle de nœud:
Notez que pour que cela fonctionne, vous devez avoir le champ de commentaire par défaut dans votre nœud qui est toujours nommé commentaire.
la source