当前位置:博客首页>>wordpress >> 阅读正文

wordpress边栏最近热门浏览排行

作者: 郑晓 分类: wordpress 发布于: 2017-03-22 13:29 浏览:23,407 评论(3)


博客右侧边栏的最近热门文章列表,展示的是最近30条文章中浏览最多的前10条数据。
这里浏览量基于插件WP-PostViews实现。
主题functions.php中增加函数get_hot()



function get_hot() {
global $wpdb;
if ($posts = wp_cache_get('posts', '30-hot-archives')) return $posts;
$query = "SELECT ID,post_title,post_name,CONVERT(meta_value, SIGNED) as views FROM (select ID,post_title,post_name from $wpdb->posts WHERE post_type='post' AND post_status = 'publish' AND comment_status = 'open' order by ID desc limit 30) as p left join $wpdb->postmeta m on p.ID=m.post_id and m.meta_key='views' order by views desc limit 10";
$posts = $wpdb->get_results($query);
wp_cache_set('posts', $posts, '30-hot-archives');;
return $posts;
}

sql中先查询最近30条文章,然后和postmeta表中meta_key为views的记录进行联接查询,最后再按meta_value的值进行desc排序,也就是浏览量排序。 其中注意meta_value由于类型是字符串,直接排序会有问题,所以这里需要先使用convert转为signed类型。
主题边栏sidebar.php中需要展示列表的地方使用get_host()调用获得数据,然后可以进行遍历输出。

       

本文采用知识共享署名-非商业性使用 3.0 中国大陆许可协议进行许可,转载时请注明出处及相应链接。

本文永久链接: https://www.zh30.com/wordpress-sidebar-hot-posts.html

wordpress边栏最近热门浏览排行:目前有3 条留言

用户评论头像 君笨笨发表于 2019年10月31日 23:49[回复]

我看看………..

用户评论头像 绿软吧发表于 2019年07月06日 23:55[回复]

感谢分享,这个不错

用户评论头像 衣皇后发表于 2017年04月04日 10:17[回复]

从百度进来的,博客不错哦!

发表评论

change vcode