分享各种网络资源
是我乃至整个互联网的精髓所在
最新消息:开启被动注册模式,详情点击这里,同时接小单,QQ:330733312
 您目前所在位置: 站点首页 » WordPress » WordPress 代码 » WordPress非插件给文章添加浏览次数
  • +
  • 3
  • WordPress非插件给文章添加浏览次数

  • 无插件实现浏览次数
  • 提取浏览次数最多的文章
  • WordPress非插件给文章添加浏览次数-BanYuner

    现在一篇文章的好坏可能一定程度上面是通过表面的浏览量来体现的,但是我们都是知道的,浏览量这个东西本来就是一个虚的,可以刷出来的,就像淘宝一样,是可以刷的,但是我们依然还是通过插件来实现了。WordPress最开始的时候通过PostViews插件来实现这个功能,但是现在可以通过代码来实现了,代码方面来自WP大学,这里直接附上代码了,代码直接放入functions.php文件中即可:

    无插件实现浏览次数

    /* 访问计数 */
    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');
    /// 函数名称:post_views
    /// 函数作用:取得文章的阅读次数
    function post_views($before = '(点击 ', $after = ' 次)', $echo = 1)
    {
    global $post;
    $post_ID = $post->ID;
    $views = (int)get_post_meta($post_ID, 'views', true);
    if ($echo) echo $before, number_format($views), $after;
    else return $views;
    }
    

    那么看了代码之后,我们就摘掉了,浏览次数说白了就是点击一次增量加一,如果我们把增量设定为一个随机数的话,那么浏览量就可想而知了,所以说就是一个虚的。

    相关调用代码如下:

    阅读:<?php post_views(' ', ' 次'); ?>
    

    至于这个调用代码放在哪里,就看个人了。

    提取浏览次数最多的文章

    同时,WP大学也提供了如何提取浏览次数最多的文章这个功能,这里同样直接附上代码了:

    /// get_most_viewed_format
    /// 函数作用:取得阅读最多的文章
    function get_most_viewed_format($mode = '', $limit = 10, $show_date = 0, $term_id = 0, $beforetitle= '(', $aftertitle = ')', $beforedate= '(', $afterdate = ')', $beforecount= '(', $aftercount = ')') {
    global $wpdb, $post;
    $output = '';
    $mode = ($mode == '') ? 'post' : $mode;
    $type_sql = ($mode != 'both') ? "AND post_type='$mode'" : '';
    $term_sql = (is_array($term_id)) ? "AND $wpdb->term_taxonomy.term_id IN (" . join(',', $term_id) . ')' : ($term_id != 0 ? "AND $wpdb->term_taxonomy.term_id = $term_id" : '');
    $term_sql.= $term_id ? " AND $wpdb->term_taxonomy.taxonomy != 'link_category'" : '';
    $inr_join = $term_id ? "INNER JOIN $wpdb->term_relationships ON ($wpdb->posts.ID = $wpdb->term_relationships.object_id) INNER JOIN $wpdb->term_taxonomy ON ($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id)" : '';
    // database query
    $most_viewed = $wpdb->get_results("SELECT ID, post_date, post_title, (meta_value+0) AS views FROM $wpdb->posts LEFT JOIN $wpdb->postmeta ON ($wpdb->posts.ID = $wpdb->postmeta.post_id) $inr_join WHERE post_status = 'publish' AND post_password = '' $term_sql $type_sql AND meta_key = 'views' GROUP BY ID ORDER BY views DESC LIMIT $limit");
    if ($most_viewed) {
    foreach ($most_viewed as $viewed) {
    $post_ID    = $viewed->ID;
    $post_views = number_format($viewed->views);
    $post_title = esc_attr($viewed->post_title);
    $get_permalink = esc_attr(get_permalink($post_ID));
    $output .= "<li>$beforetitle$post_title$aftertitle";
    if ($show_date) {
    $posted = date(get_option('date_format'), strtotime($viewed->post_date));
    $output .= "$beforedate $posted $afterdate";
    }
    $output .= "$beforecount $post_views $aftercount</li>";
    }
    } else {
    $output = "<li>N/A</li>n";
    }
    echo $output;
    }
    

    通过代码我们可以清楚地看到运用了大量的SQL语句,那么也就是说这段代码会增加数据库的负担,那么这样一来有的用户可能就觉得这个功能呢到底有没有使用必要呢?这个就仁者见仁,智者见智了。如果你的服务器优化的好的话,我相信这点压力还是可以承受的。

    关注我们 打赏 分享此文

    微信扫码,关注我们

    扫码,支持我

    WordPress非插件给文章添加浏览次数

    支付宝(点击图片切换)

    扫码,支持我

    WordPress非插件给文章添加浏览次数

    微信(点击图片切换)

    扫码,手机看

    WordPress非插件给文章添加浏览次数
    匿名

    个人评价:┃草根博主┃站点无技术含量┃文章内容不够吸引人┃转载内容随处可见┃资源均来自网络┃分享是我的宗旨,也是这个站点存在意义,分享的东西你现在可能不需要,但是我相信只要在某个时间你需要的时候能在这里找到,那么我就是成功的

    相关推荐

    • WordPress 分类描述添加可视化编辑模式

      WordPress 分类描述添加可视化编辑模式

      可视化编辑模式一直是很多人喜欢使用的,但是我个人方面还是喜欢传统的 html 模式,不是别的,主要是自己写的东西通过代码出现的就是自己的,而...

      点击查看
    • 6 款 WordPress 缓存插件对比测试

      6 款 WordPress 缓存插件对比测试

      缓存插件我相信每个站点几乎都是在使用的,插件的原理并不是能提高带宽也不是说能提高页面加载速度等等,仅仅是为了降低服务器的压力,当人群数量大量...

      点击查看
    • WordPress 获取分类第一篇文章第一张图片地址

      WordPress 获取分类第一篇文章第一张图片地址

      这个功能我不知道网络上面有没有相关教程,至少我是没有看到的,所以这里还是简单的说一下,可能其中有不少问题,也可能是我的方法太过复杂,但是还是...

      点击查看
    WordPress非插件给文章添加浏览次数
    7 + 5 =