- Home
- Categorie
- Coding e Sistemistica
- CMS & Piattaforme Self-Hosted
- Widget commenti recenti... personalizzato
-
Widget commenti recenti... personalizzato
Ho bisogno di far in modo che quando si sta leggendo un articolo (quindi pagina single.php), il widget dei commenti recenti presente in sidebar mostri solamente i commenti di articoli che hanno uno o più tag uguali al post che si sta leggendo.
Per il momento sono fermo a questo punto:
[PHP]
<?php
$tag = get_the_tags();
if (is_single() && ($tag)) {$number=5; // numero di commenti $comments = $wpdb->get_results("SELECT * FROM $wpdb->comments WHERE comment_approved = '1' ORDER BY comment_date_gmt DESC LIMIT $number"); ?> <div class="widget"> <p class="widget-title">Commenti Recenti</p> <?php if ( $comments ) : foreach ( (array) $comments as $comment) : echo '<li class="recentcomments">' . sprintf(__('%1$s su %2$s'), get_comment_author_link(), '<a href="'. get_comment_link($comment->comment_ID) . '">' . get_the_title($comment->comment_post_ID) . '</a>') . '</li>'; endforeach; endif; ?> </div> <?php } ?>
[/PHP]
Ho creato la condizione che controlla che ci si trovi nella pagina single e che l'articolo abbia dei tag, ed infine la parte che visualizza i commenti. Però non saprei come visualizzare solo i commenti con tag uguali ai tag dell'articolo. Idee?
-
Dovresti modificare la query selezionando gli articoli che ti interessano, oppure scarichi un plugin per i post correlati e gli aggiungi il tuo codice
-
@MatrixTeo said:
Dovresti modificare la query selezionando gli articoli che ti interessano, oppure scarichi un plugin per i post correlati e gli aggiungi il tuo codice
Ho provato un po' di plugin ma nessuno fa quello che cerco, ho fatto anche una ricerca in internet... stranamente sembra che nessuno sia interessato a una modifica del genere.
Devo riuscire a capire come modificare la query in modo che mostri solo i commenti ad articoli con tag uguali a uno o più tag dell'articolo che si sta leggendo, diciamo che in teoria saprei come fare, però non so come scriverlo in php
[PHP]$comments = $wpdb->get_results("SELECT * FROM $wpdb->comments WHERE comment_approved = '1' ORDER BY comment_date_gmt DESC LIMIT $number");[/PHP]