Wordpress主题开发:阅读量美化以k为单位

最近在为自己的博客设计主题,在文章阅读量这块设计的时候怎么搞都不满意,最主要的原因就是不美观,参阅了大部分网友的设置之后,最后决定超过1000阅读量的时候采用以k为单位显示,这样显得数字不是很长,又非常的通俗易懂。

本博客阅读量采用的是

  1. 低于1000阅读量以原数字显示
  2. 大于1000小于10000的以k为单位显示,保留两位小数
  3. 大于10000的以w为单位显示,保留一位小数
  4. 大于100000的以10w+ 显示

最后附上代码,把如下代码放入主题的function.php中:

//取得文章的阅读次数 
function num2tring($num) {
	if ($num >= 100000) {
		$num = '10w+';
	} elseif ($num >= 10000) {
        $num = round($num / 10000 * 100) / 100 .'w';
    } elseif($num >= 1000) {
        $num = round($num / 1000 * 100) / 100 . 'k';
    } else {
        $num = $num;
    }
    return $num;
}
 
function post_views($before = '', $after = ' views', $echo = 1)  
{  
  global $post;  
  $post_ID = $post->ID;  
  $views = (int)get_post_meta($post_ID, 'views', true);  
  $views = num2tring($views);
  if ($echo) echo $before, $views, $after;  
  else return $views;  
}  
function record_visitors()  
{  
    if (is_singular()) {  
      global $post;  
      $post_ID = $post->ID;  
      if($post_ID) {  
          $post_views = (int)get_post_meta($post_ID, 'views', true);  
          if(!update_post_meta($post_ID, 'views', ($post_views+1))) {  
            add_post_meta($post_ID, 'views', 1, true);  
          }  
      }  
    }  
}  
add_action('wp_head', 'record_visitors');

在需要显示的地方输入如下这段代码即可:

 

你可能感兴趣的:(wordpress)