Счётчик просмотров

Счётчик просмотров

Совсем недавно решил сделать себе на страницах счётчик количества просмотров страницы. Существуют конечно же различные плагины для реализации данной функции, но нам же это неинтересно и скучно. Хочется руками поработать, да и меньше блог будет загружаться если мы будем использовать меньше плагинов.

Для релизации подсчёта количества просмотров мы будем использовать function.php нашей темы. Добавим в function.php следующий код:

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.' Просмотров';
}
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:

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

Ну и наконец, для отображения количества просмотров вставляем в нужное вам место вашего шаблона, в том же single.php следующий код:

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

Также можно смотреть количество просмотров в админке блога. Для реализации этой функции нужно добавить следующий код в тот же файл functions.php

add_filter('manage_posts_columns', 'posts_column_views');
add_action('manage_posts_custom_column', 'posts_custom_column_views',5,2);
function posts_column_views($defaults){
    $defaults['post_views'] = __('Смотрело');
    return $defaults;
}
function posts_custom_column_views($column_name, $id){
    if($column_name === 'post_views'){
        echo getPostViews(get_the_ID());
    }
}

Вот в принципе и всё, как я реализовал функцию количества просмотра страниц можете увидеть ниже, после Тэгов.