
Скрипт для вывода количества просмотров страницы.
Всем привет.
Давным давно, когда на этом блоге еще был другой шаблон, у меня в конце каждого поста, отображалось количество просмотров. В результате чего, можно было видеть, чем именно больше всего интересуются посетители на блоге. Тогда для этих целей я пользовался специальным плагином WP-PostViews. Но в последнее время я не любитель перегружать свой блог плагинами, создавая на него дополнительную нагрузку. Стараюсь все менять на скрипты, а если нет возможности, то вовсе отказываюсь от плагинов, если конечно они критически не важны 🙂
Так вот, следующим скриптом, про который я напишу ниже, можно заменить плагин WP-PostViews.
Для того что бы у себя на блоге установить данный скрипт и видеть сколько раз просматривали, ту или иную страницу/запись, Вам необходимо на блоге немного по шаманить.
После установки скрипта на блоге мы увидим вот такую строчку:
Делаем следующее по порядку.
Для начала заходим в админ панель вашего сайта, переходим в раздел Редактор и там выбираем для редактирования файл functions.php.
В этом файле в самом вверху после <?php вставляем следующий код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | // Отображает количество просмотров к записи. 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.' просмотров'; } 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 вставляем туда код который будет считать количество просмотров:
1 | <!--?php setPostViews(get_the_ID()); ?--> |
Для вывода, визуального отображения количества просмотров страницы, нам необходимо вставить ещё один код, в том месте страницы, где бы вы хотели его видеть. Код следующий:
1 | <!--?php echo getPostViews(get_the_ID()); ?--> |
Что бы не путаться, разместите их рядом.
Теперь все работает и мы можем понаблюдать, сколько раз посетители просмотрели определенную страницу.
Хочу заметить, что сразу после установки, отчет просмотров начинается с 0.
Можно еще сделать, что бы просмотры отображались в админ панели, напротив каждой записи. Для этого в файл functions.php после <?php необходимо вставить ешё один код:
1 2 3 4 5 6 7 8 9 10 11 | 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()); } } |
В админ панели мы будем наблюдать следующую картину:
Вот такая получилась небольшая, информационная примочка для блога. Думаю полезная вещь.
На этом все. Будут вопросы пишите в комментариях.
Автор блога, Александр Рус.
скрипт работает, спасибо - только в выводе есть ошибки нужно убрать в начале !-- и в конце -- и всё заработает.
Доброго времени суток. Хотел узнать, реально ли сделать так, чтоб кол-во просмотров отображались не только в блоге(на сайте), но и подтягивались в таблицу exel?
Доброго дня! Невозможного ничего нет и это не исключение.
У меня тоже код не сработал.
Добрый день. На моем сайте код работать отказался. Для корректной работы кода пришлось заменить на
Это помогло оживить код. Не знаю, правильно это или нет - я впервые в коды залезла, но, возможно, кому-то тоже поможет.
И еще: не забывайте делать резервную копию файла, который собираетесь редактировать! А то я вот хотела как-то правильней вывести слово "просмотров", а так как знаний по редактированию кода нуль, то полетело всё в неведомые дали. Если Вы знаете, как сделать, чтоб выводилось "Просмотры: количество", то, пожалуйста, подскажите.
Настя, возможно вы где то допустили ошибку, возможно не в том месте или не в том файле его вставили.
Знакома Ваша ситуация. Я тоже, когда залезла в коды, у меня менюшка стала сикось накось, муж потом полдня исправлял мое творение. ))
Извините, код не вставился 🙁
Скажите а подобный код ведь подойдет для того чтобы вычислять популярные записи и потом выводить их в сайдбаре
Не подойдет, он просто выводит информацию, сколько людей просмотрело станицу.
Спасибо Сань, крипт полезный! Но есть одно но: У меня почему-то отказался работать...
Даже не знаю, может ты ни туда что-нибудь прописал в коде?
Я попробовал этот скрипт на своем блоге туристическом, все работает нормально и не возникает никаких проблем
Да вроде как все верно!
Да, скрипт действительно интересный. Только вот есть вопрос. Почему все так боятся плагинов? Если интересен ответ, то он есть на блоге Александра Каратаева.
Тут ответ очивиден. Скрипт меньше места занимает и от него нагрузка на блог меньше.
Многие плагины безобидны, поэтому перед установкой часто провожу анализ плагина и решаю, стоит заморачиваться со скриптом или нет
Сам писал скрипт?
Нет)
Попробую установить себе на блог. Интересно для статистики
Скрипт интересный, очень удобен в аналитике. Спасибо, в будущем пригодиться!
Сань, ты уж не серчай но я передаю тебе награду Liebster Blog Award. Уверен, что ты и твой блог это давно заслужили. Подробности в статье на моем блоге http://bloger-man.ru/bloger-man-ru-udostoilsya-nagrady-liebster-blog-award/
Ты уже третий, кто предлагает) придется принять)
А что это за награда такая?
А то я почти пол года отсутствовал и о последних событиях блогосферы мало что знаю, но вот денек погуляв по блогам уже несколько раз наткнулся на упоминание данной награды.
ДА там ещё и викторина какая-то есть!
O_o С возвращением Валентин! Я толком не разбирался сам что это за награда, хотя мне предлагали уже несколько раз поучаствовать в этой викторине. Как то ещё не решился)
По сути эта награда ничего блогу не дает. Как сказали свыше - скоро в интернете будут все блоги с этой наградой.
😀 😀 😀
Я уже раз пятый извинялся что не могу принять и отказывался. Скоро не будет в Рунете блогов, которые не получили эту награду.