Martin Koksrud Bekkelund

Martin Koksrud Bekkelund

Teknologi • Samfunn • Politikk

Siste kommentarer i WordPress

09.03.06

Jeg får til stadighet henvendelser fra folk som lurer på hvordan jeg lister de siste kommentarene i webloggen min. Koden er relativt enkel, og et lappeteppe av forskjellige kodebiter jeg har funnet på nettet. Det har dessverre ikke lykkes meg i å finne opphavet til alle kodebitene, så jeg beklager herved til de som måtte ha bidratt til denne koden, og som ikke får sin behørige kreditering i koden.

Det forutsettes en viss innsikt i WordPress og hvordan du arbeider med WordPress-temaer for å ha glede av denne posten.

Jeg har ikke laget det som et tillegg (plugin), men som en kodebit du limer inn i filen “sidebar.php” i ditt tema. Finner jeg tid lager jeg en plugin av det en gang i fremtiden.

Koden:

  1. <?php
  2.  
  3. function get_recent_comments($no_comments = 5, $comment_lenth = 5, $before = ‘<li>’, $after = ‘</li>’, $show_pass_post = false, $comment_style = 1) {
  4. global $wpdb, $tablecomments, $tableposts;
  5. $request = "SELECT ID, comment_ID, comment_content, comment_date, comment_author, post_title FROM $tablecomments LEFT JOIN $tableposts ON $tableposts.ID=$tablecomments.comment_post_ID WHERE post_status = ‘publish’ ";
  6. if(!$show_pass_post) $request .= "AND post_password =” ";
  7. $request .= "AND comment_approved = ‘1’ ORDER BY comment_ID DESC LIMIT $no_comments";
  8. $comments = $wpdb->get_results($request);
  9. $output = ”;
  10. foreach ($comments as $comment) {
  11. $comment_author = stripslashes($comment->comment_author);
  12. $comment_content = strip_tags($comment->comment_content);
  13. $comment_content = stripslashes($comment_content);
  14. $comment_date = $comment->comment_date;
  15. $words=split(" ",$comment_content);
  16. $comment_excerpt = join(" ",array_slice($words,0,$comment_lenth));
  17. $permalink = get_permalink($comment->ID)."#comment-".$comment->comment_ID;
  18. if ($comment_style == 1) {
  19. $post_title = stripslashes($comment->post_title);
  20. $output .= $before . ‘<span class="blogg_meny_siste_kommentar"><a href="’ . get_permalink($comment->ID) . ‘#comment-‘ . $comment->comment_ID . ‘" title="Les post">’ . $comment_author . ‘ om<br />’ . $post_title .'</a></span>’ . $after;
  21. } else {
  22. $output .= $before . ‘<strong>’ . $comment_author . ‘:</strong> <a href="’ . $permalink;
  23. $output .= ‘" title="View the entire comment by ‘ . $comment_author.’">’ . $comment_excerpt.'</a>’ . $after;
  24. }
  25. }
  26. echo $output;
  27. }
  28.  
  29. ?>
  30.  
  31. <ul>
  32. <?php get_recent_comments(5); ?>
  33. </ul>

Dette kodestykket setter du inn i “sidebar.php” i ditt tema. Det skal fungere uten videre mekking. Har du litt nerdenykker kan du skru på koden selv. Forbedringer kan du jo poste som en kommentar.

Ønsker du å justere antallet kommentarer som vises justerer du det i denne linjen, ved å angi et annet tall:

  1. <ul>
  2. <?php get_recent_comments(5); ?>
  3. </ul>

Jeg anbefaler (for din egen del) at du setter det inn i en <div> og gir det en overskrift. I tillegg finnes det en klasse du kan benytte i stilsettet ditt.

Tilbakemeldinger tas selvfølgelig i mot med stor takk, og kan postes som en kommentar. :-)

Programvare WWW

Som leser kan du gi et bidrag til produksjonen, til driften og til å skaffe utstyr til testing for å sikre regelmessige, uavhengige artikler, tester og vurderinger av høy kvalitet.

Gi et bidrag

Husk å abonnere på nyhetsbrevet, det er gratis og du får alle artikler rett i innboksen.

 

Flere artikler

Enda flere artikler? Besøk arkivet.

Om Martin

Martin Koksrud Bekkelund

Dette er Martin Koksrud Bekkelund sitt private nettsted, hvor han skriver om forbrukerteknologi, teknologiledelse og hvordan teknologi, samfunn og politikk påvirker hverandre. Martin er SVP Business Development, International Growth hos Documaster. Les mer...

 

Mastodon Facebook LinkedIn Thingiverse GitHub Ko-Fi PayPal

© 1995-2022 Martin Koksrud Bekkelund
OpphavsrettRSS og abonnementKontaktPersonvern og informasjonskapsler