北极寒流 » 网络资源 » 利用WP-Postviews随机显示多个分类下的热门文章(带缩略图) - 2013.09.13

利用WP-Postviews随机显示多个分类下的热门文章(带缩略图)

利用WP-Postviews已经有办法显示带缩略图的最新文章,但是如果我希望随机显示多个分类下的热门文章又该如果做呢?当然,WP-Postviews插件还是首先需要安装的。

代码

<h4 class="tit2">MM们还喜欢的单品:</h4>
<div class="widget clearfix">
<?php
$rand_category_keys = array();
$rand_category = array();
$arr_category = get_categories();
$rand_category_keys = array_rand($arr_category, 4); // 显示随机分类数
for($i=0;$i<4;$i++)
{$rand_category[$i] = $arr_category[$rand_category_keys[$i]]->term_id;}
?>

<?php for($i=0;$i<4;$i++){
$args_randcat_hotpost = array(
'orderby' => 'meta_value',
'meta_key' => 'views',   //以浏览量最多为最热文章形式,配合插件WP-postviews使用
'post__not_in' => array($post->ID), //不显示当前文章
'showposts' => 3, // 显示篇数
'cat' => $rand_category[$i],  // 分类ID
'paged' => $paged,
);

$randcat_most_viewed_posts = new WP_Query( $args_randcat_hotpost ); ?>
<?php if($randcat_most_viewed_posts->have_posts()):?>
<div class="title"><a href="#" target="_blank"><?php echo $arr_category[$rand_category_keys[$i]]->cat_name;?></a></div>
<ul class="clearfix">
<?php while ($randcat_most_viewed_posts->have_posts()): $randcat_most_viewed_posts->the_post(); ?>
<li>
<a href="<?php echo the_permalink(); ?>" title="<?php the_title(); ?>" target="_blank">
<img src="<?php if ( get_post_meta($post->ID, 'thumbnail', true) ) : ?><?php echo get_post_meta($post->ID, 'thumbnail', true);?><?php else: ?><?php echo '未设定缩略图字段后替换固定图片地址' ?><?php endif; ?>" alt="<?php the_title(); ?>" width="60px" height="60px"/>
</a>
</li>
<?php endwhile; wp_reset_query(); ?>
</ul>
<?php endif;?>
<?php } ?>
</div>

 

以上get_post_meta()中的 thumbnail是缩略图的自定义字段,整个代码实现过程中需要用到wordpress函数new WP_Query(),函数的官方使用介绍见链接地址:http://codex.wordpress.org/Function_Reference/WP_Query

13

利用WP-Postviews随机显示多个分类下的热门文章(带缩略图)

分享到: