get_results($sql);" />
wordpress获取热门文章的功能,把如下代码放到模板所在目录的functions.php里即可:
// 热门
function popular_posts($days = 7, $num = 10, $before='', $after=''){
global $wpdb;
$today = date("Y-m-d H:i:s"); //获取今天日期时间
$daysago = date( "Y-m-d H:i:s", strtotime($today) - ($days * 24 * 60 * 60) );
$sql = "SELECT comment_count,ID,post_title ";
$sql .= "FROM $wpdb->posts where post_status='publish' and post_type='post' ";
$sql .= " and post_date BETWEEN '$daysago' AND '$today' ";
$sql .= "ORDER BY comment_count DESC ";
$sql .= "LIMIT 0 , $num";
$hotposts = $wpdb->get_results($sql);
$output = '';
$hot_key = 1;
foreach ($hotposts as $hotpost) {
$post_title = stripslashes($hotpost->post_title);
$permalink = get_permalink($hotpost->ID);
if($hot_key == 1){
$output .= '<dd>';
$output .= ' <div class="nex_readfirsts">';
$output .= ' <div class="nex_readfirsts_num">' .$hot_key . '</div>';
$output .= ' <div class="nex_readfirsts_info">';
$output .= ' <h5>';
$output .= $before.'<a href="' . $permalink . '">' . $post_title . '</a>' .$after;
$output .= ' </h5>';
$output .= ' <p>'.get_the_excerpt($hotpost->ID).'</p>';
$output .= ' </div>';
$output .= ' <div class="clear"></div>';
$output .= ' </div>';
$output .= '</dd>';
}else{
$output .= '<dd>';
$output .= ' <div class="nex_readsecond_num">'.$hot_key.'</div>';
$output .= ' <div class="nex_readingtxt">'.$before.'<a href="' . $permalink . '">' . $post_title . '</a>' .$after.'</div>';
$output .= ' <div class="clear"></div>';
$output .= '</dd>';
}
$hot_key ++;
}
if($output==''){
//popular_posts($days = 5, $num = 10, $before='', $after='');
$output .= $before.'no data...'.$after;
}
echo $output;
}
function hot_posts($days = 7, $offset = 0, $num = 10, $before='', $after='', $cat = 1){
global $wpdb;
$today = date("Y-m-d H:i:s"); //获取今天日期时间
$daysago = date( "Y-m-d H:i:s", strtotime($today) - ($days * 24 * 60 * 60) );
// $sql = "SELECT comment_count,ID,post_title ";
$sql = "SELECT * ";
$sql .= "FROM $wpdb->posts where post_status='publish' and post_type='post' ";
if($cat != 1){
$sql .= " and cat='$cat' and post_date BETWEEN '$daysago' AND '$today' ";
}else{
$sql .= " and post_date BETWEEN '$daysago' AND '$today' ";
}
$sql .= "ORDER BY comment_count DESC ";
$sql .= "LIMIT $offset , $num";
$hotposts = $wpdb->get_results($sql);
return $hotposts;
}上一篇: wordpress更改固定连接URL后做301重定向的代码
下一篇: wordpress统计文章评论数功能代码