首页 > CMS > Wordpress > 正文

wordpress文章浏览量的实现方法

2024-09-07 00:50:58
字体:大 中 小
来源:转载
供稿:网友

我们在网上找到很多使用插件来实现,但个人学喜欢插件怕不安全或代码太多了,后来找到一个朋友写的一段代码,wordpress不用插件来实现功能方法.

第一种,找到functions模板,加入以下代码:

  1. function getPostViews($postID){ 
  2. $count_key = ‘post_views_count’; 
  3. $count = get_post_meta($postID, $count_key, true); 
  4. if($count==”){ 
  5. delete_post_meta($postID, $count_key); 
  6. add_post_meta($postID, $count_key, ’0′); 
  7. return “0 View”; 
  8. } 
  9. return $count.’ Views’; 
  10. } 
  11. function setPostViews($postID) { 
  12. $count_key = ‘post_views_count’; 
  13. $count = get_post_meta($postID, $count_key, true); 
  14. if($count==”){ 
  15. $count = 0; 
  16. delete_post_meta($postID, $count_key); 
  17. add_post_meta($postID, $count_key, ’0′); 
  18. }else{ 
  19. $count++; 
  20. update_post_meta($postID, $count_key, $count); 
  21. } 
  22. } 

然后将下面代码加到主题single模版主循环的中,代码如下:

<?php setPostViews(get_the_ID()); ?>

也就是类似这句的下面,代码如下:

<?php if (have_posts()):while (have_posts()):the_post(); ?>

最后,将调用显示阅读次数代码加到single模版适当的位置,代码如下:

<?php echo getPostViews(get_the_ID()); ?>

如果想在其它位置显示阅读次数,可以将下面代码也加到functions模版中:

remove_action(’wp_head’,’adjacent_posts_rel_link_wp_head’,10,0);

这样就实现了wordpress不用插件来显示文章浏览量的功能了.

第二种,比较简单—找到functions模板,加入以下代码:

  1. //postviews 
  2. function get_post_views ($post_id) { 
  3.  
  4. $count_key = ‘views’; 
  5. $count = get_post_meta($post_id, $count_key, true); 
  6.  
  7. if ($count == ”) { 
  8. delete_post_meta($post_id, $count_key); 
  9. add_post_meta($post_id, $count_key, ’0′); 
  10. $count = ’0′; 
  11. } 
  12.  
  13. echo number_format_i18n($count); 
  14.  
  15. } 
  16.  
  17. function set_post_views () { 
  18.  
  19. global $post; 
  20.  
  21. $post_id = $post -> ID; 
  22. $count_key = ‘views’; 
  23. $count = get_post_meta($post_id, $count_key, true); 
  24.  
  25. if (is_single() || is_page()) { 
  26.  
  27. if ($count == ”) { 
  28. delete_post_meta($post_id, $count_key); 
  29. add_post_meta($post_id, $count_key, ’0′); 
  30. } else { 
  31. update_post_meta($post_id, $count_key, $count + 1); 
  32. } 
  33.  
  34. } 
  35.  
  36. } 
  37. add_action(‘get_header’, ‘set_post_views’); 

加入到主题functions模版文件中,直接调用<?php get_post_views($post -> ID); ?> views 到文章页面即可.

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表