Счетчик просмотров записи по ip адресу в WordPress

Счетчик просмотров записи по ip адресу в WordPress

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

function setPostViews($postID) {

    $user_ip = $_SERVER['REMOTE_ADDR']; //узнаем текущий IP-адрес посетителя
    $key = $user_ip . 'x' . $postID; //объединяем ID записи и IP, чтобы сформировать уникальный ключ
    $value = array($user_ip, $postID); // сохраняем ID записи IP в виде отдельных значений (см. примечание)
    $visited = get_transient($key); //получить данные и сохранить в переменной

    //проверяем, ID/IP ($key) на наличие в базе
    if ( false === ( $visited ) ) {

        //сохраняем уникальный ключ, ID записи и IP посетителя на 12 часов если он отсутствует
        set_transient( $key, $value, 60*60*12 );

        // запись данных в базу
        $count_key = 'views';
        $count = get_post_meta($postID, $count_key, true);
        if($count==''){
            $count = ;
            delete_post_meta($postID, $count_key);
            add_post_meta($postID, $count_key, '0');
        }else{
            $count++;
            update_post_meta($postID, $count_key, $count);
        }


    }

}

Теперь надо в шаблон записи вашей темы вставить этот код:

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

Для вывода количества просмотров надо в файл functions.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";
    }
    return $count;
}

А в место где хотите вывести количество просмотров надо вставить это:

<p>Просмотрено <?php echo getPostViews(get_the_ID()); ?> раз</p>
Чистим head в WordPress И убираем лишнее и ненужно... Для начала уберем код который дописывает движок wordpress. Из написанного в каждой строке более менее понятно что уберется, но если что-то не ясно — c...
Доступ к Synology DiskStation через интернет c дин... If you have a Synology DiskStation and already have a hostname (for your website, blog, or other) you can set up your DiskStation on a dedicated subdo...
СТУДИЯ AD : ДИЗАЙН САЙТОВ UCOZ Очень крутой и полезный ресурс по дизайну, кодингу и мелким штучкам. СТУДИЯ AD : ДИЗАЙН САЙТОВ UCOZ...
Как вывести первое изображение из записи... Вывод непосредственно первого изображения, если его нет то «заглушку» из списка. Для этого нужно в functions.php дописать: function first_image() { ...
Читайте также  PHP инкримент. Увеличение и уменьшение на единицу.

Сохрани, чтобы не потерять