A-A+
分享两个代码实现WordPress文章阅读次数
代码一:
一、首先将下面代码加到主题functions模版文件中:
- function getPostViews($postID){
- $count_key = 'post_views_count';
- $count = get_post_meta($postID, $count_key, true);
- if($count==''){
- delete_post_meta($postID, $count_key);
- add_post_meta($postID, $count_key, '0');
- return "0 View";
- }
- return $count.' Views';
- }
- function setPostViews($postID) {
- $count_key = 'post_views_count';
- $count = get_post_meta($postID, $count_key, true);
- if($count==''){
- $count = 0;
- delete_post_meta($postID, $count_key);
- add_post_meta($postID, $count_key, '0');
- }else{
- $count++;
- update_post_meta($postID, $count_key, $count);
- }
- }
二、接下来将下面代码加到主题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);
代码二:
一、同样将下面代码加到主题functions模版文件中:
- //postviews
- function get_post_views ($post_id) {
- $count_key = 'views';
- $count = get_post_meta($post_id, $count_key, true);
- if ($count == '') {
- delete_post_meta($post_id, $count_key);
- add_post_meta($post_id, $count_key, '0');
- $count = '0';
- }
- echo number_format_i18n($count);
- }
- function set_post_views () {
- global $post;
- $post_id = $post -> ID;
- $count_key = 'views';
- $count = get_post_meta($post_id, $count_key, true);
- if (is_single() || is_page()) {
- if ($count == '') {
- delete_post_meta($post_id, $count_key);
- add_post_meta($post_id, $count_key, '0');
- } else {
- update_post_meta($post_id, $count_key, $count + 1);
- }
- }
- }
- add_action('get_header', 'set_post_views');
二、将调用显示阅读次数代码加到single模版适当的位置:
- <?php get_post_views($post -> ID); ?> views
调用显示阅读次数代码也可以加到其它模版文件的适当位置。