wordpress 做一个购物型的网站少不了需要展示最新评论的产品,为了抓住访问者的眼球,就需要将网站最精华的产品和访问者最感兴趣的东西展示在访问者第一眼就能看得到的地方。而评论本身对来访者是一个很重要的参考指标。
在网上搜索了一下,发现关于wordpress电子商务网站的介绍不是很多,当然可以使用插件解决但是插件多多少少对程序的速度上有些影响,尤其对于使用空间和低端VPS的朋友来说,影响比较明显,而且插件装太多容易照成互相冲突,根据尽量少得使用插件的原则,我自己写了一个:
下面就是具体的代码显示:
<?php
$query = “SELECT * from $wpdb->comments,$wpdb->commentmeta WHERE comment_approved= ’1′ and $wpdb->comments.comment_id=$wpdb->commentmeta.comment_id ORDER BY comment_date DESC LIMIT 0 ,5″;
$comments = $wpdb->get_results($query);
if ($comments) {
echo ‘<h2>Recent Reviews</h2><ul class=”widget-re”>’;
$i=0;
foreach ($comments as $comment) {
$i++;
$sql=’select DISTINCT post_title,post_type from ‘.$wpdb->posts.’ where ID=’.$comment->comment_post_ID.”;
$product = $wpdb->get_results($sql);
if($product[0]->post_type==”product”){
$attr_id = get_post_thumbnail_id($comment->comment_post_ID);
$image_url = wp_get_attachment_image_src( $attr_id ,’full’);
$image_url = $image_url[0];
$url = ‘<a href=”‘. get_permalink($comment->comment_post_ID).’#comment-’.$comment->comment_ID .’” title=”‘.$comment->comment_author .’ | ‘.get_the_title($comment->comment_post_ID).’”>’;
echo ‘<li>’;
echo $url;
echo ‘<img style=”width:32px;height:32px;” src=’.$image_url.’>’.substr($product[0]->post_title,0,15).”;
echo ‘</a>’;
if($comment->meta_value==5){
echo ‘
<div class=”star-rating” title=”5″>
<span style=”width:80px”>5 out of 5</span>
</div>
‘;
}
echo ‘<p style=”font-size:14px;margin-top:4px; color:#999;”>by ’.$comments[$i-1]->comment_author.’</p>’;
echo ‘</li>’;
}}
echo ‘</ul>’;
}
?>
修改的工作基本就结束了,打开你的网站你会发现评论的内容已经取得被评论的文章显示在了首页的位置!下面付上两张图片,前面的是修改之前的显示模样,后面的是修改之后的显示样式。