Afficher les derniers commentaires dans votre blog sans widget
Par défault WordPress gère l’affichage des derniers commentaires, cependant pour permettre une totale customisation des données et du css j’utilise ce petit bout de code à intégrer par exemple dans sidebar.php ou ailleurs dans la template :
- On peut ainsi gérer le nombre de caractère maximum des commentaires pour une intégration parfaite :
SUBSTRING(comment_content,1,30) ici 30 caractères max. - Gérer le nombre de commentaires:
LIMIT 10 ici 10 commentaires max. - Afficher les informations voulues (date, auteur, …)
<h2>Derniers commentaires</h2>
<?php
global $wpdb;
$sql = "SELECT DISTINCT ID, post_title, post_password, comment_ID,
comment_post_ID, comment_author, comment_date_gmt, comment_approved,
comment_type,comment_author_url,
SUBSTRING(comment_content,1,30) AS com_excerpt
FROM $wpdb->comments
LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID =
$wpdb->posts.ID)
WHERE comment_approved = '1' AND comment_type = '' AND
post_password = ''
ORDER BY comment_date_gmt DESC
LIMIT 10";
$comments = $wpdb->get_results($sql);
$output = $pre_HTML;
$output .= "\n<ul>";
foreach ($comments as $comment) {
$output .= "\n<li>".strip_tags($comment->comment_author)
.":" . "<a href=\"" . get_permalink($comment->ID) .
"#comment-" . $comment->comment_ID . "\" title=\"on " .
$comment->post_title . "\">" . strip_tags($comment->com_excerpt)
."</a></li>";
}
$output .= "\n</ul>";
$output .= $post_HTML;
echo $output;
?>






Annuaire du webdesign en France
Blog Shane : graphisme & webdesign
Devheart : développement Logiciels
Fixie Factory : boutique en ligne & blog
Illusive Pixel : webdesign, graphisme
Megaptery : veille technologique et partage de ressources web
Xbition-art : webdesign, graphisme & css
Zdar.net : guide applications Iphones
Bonjour !
Merci pour ce bout de code très utile. J’aimerais afficher la date à la place de l’auteur, mais ne pas l’avoir dans son format USA, comment puis-je modifier le code pour que cela affiche au format que je souhaite ?`
voici mon bout de code adapté
comments
LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID =
$wpdb->posts.ID)
WHERE comment_approved = ’1′ AND comment_post_ID = ’250′ AND comment_type = » AND
post_password = »
ORDER BY comment_date_gmt DESC
LIMIT 3″;
$comments = $wpdb->get_results($sql);
$output = $pre_HTML;
$output .= « \n »;
foreach ($comments as $comment) {
$output .= « \n« .strip_tags($comment->comment_date))
. »: » . » » . strip_tags($comment->com_excerpt)
. »« ;
}
$output .= « \n »;
$output .= $post_HTML;
echo $output;
?>
Essayes ça
< ?php echo comment_date(' H:i',$comment->comment_ID);?> min le< ?php echo comment_date(' j F Y',$comment->comment_ID);?>Bonjour !
super le code !
Je suis débutant, tout marche avec votre code,
mais est-il possible de ne sélectionner que les commentaires d’une seule catégorie ?
Je mets de côté mais je vais continuer à chercher s’il existe pas une méthode plus propre
Trop fort mon pote. Je cherchais ça et je tombe sur toi. C’est vraiment toi le chef !
Un peu sale mais ça marche.
Les variables $pre_html et $post_html sortent d’où ?
Dans l’exemple ces variables ne servent à rien puisqu’elles ne sont pas déclarées $pre_html $post_html peuvent contenir une balise div ouvrante et fermante.
très intéressant. merci beaucoup
Merci je vais l’utiliser
Bonjour, super ça marche bien ^_^
par contre je n’arrive pas à trouvé, car sur mon blog j’affiche dans 2 div côte à côte qui utilise ce code les derniers commentaires et je voudrais que sur la seconde div ce soit la suite des commentaires de la première div donc un truc en php que j’arrive pas à trouver du style même code +5 … Merci d’avance ^_^
Ok trouvé ^^
dans LIMIT on peux mettre 2 chiffres séparés par une virgule comme ça ‘LIMIT 0, 5″;’ le 1er chiffre c’est le début d’entrée (comme ça on peux commencer à 5 par exemple), et le second chiffre limite l’affichage de résultat… Si ça peux servir ^^
Bonjour,
Je ne sais pas si quelqu’un va pouvoir m’aider : je cherche à afficher l’image du dernier portfolio(en date) de mon blog dans un widget texte/html… je m’y connais assez mal en php donc je ne sais pas si je peux adapter ton code…
Merci d’avance