wordpress邊欄最近熱門瀏覽排行
作者: 鄭曉 分類: wordpress 發(fā)布于: 2017-03-22 13:29 瀏覽:23,865 評論(3)
博客右側(cè)邊欄的最近熱門文章列表,展示的是最近30條文章中瀏覽最多的前10條數(shù)據(jù)。
這里瀏覽量基于插件WP-PostViews實現(xiàn)。
主題functions.php中增加函數(shù)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的記錄進行聯(lián)接查詢,最后再按meta_value的值進行desc排序,也就是瀏覽量排序。 其中注意meta_value由于類型是字符串,直接排序會有問題,所以這里需要先使用convert轉(zhuǎn)為signed類型。
主題邊欄sidebar.php中需要展示列表的地方使用get_host()調(diào)用獲得數(shù)據(jù),然后可以進行遍歷輸出。
本文采用知識共享署名-非商業(yè)性使用 3.0 中國大陸許可協(xié)議進行許可,轉(zhuǎn)載時請注明出處及相應(yīng)鏈接。
本文永久鏈接: http://yjfs.org.cn/wordpress-sidebar-hot-posts.html
我看看………..