Joomla 4. Компонент K2 и форк K2ForJ4 (18 янв 2024)

Если вас, как и меня, достало выслушивать (вычитывать) бесконечные обещания разработчика K2 опубликовать версию компонента K2 под Joomla 4 (без чего невозможно реализовать апгрейд from Joomla 3 to Joomla 4) - воспользуйтесь форком K2ForJ4. Который в данный момент установлен и без каких-либо проблем работает на этом веб-сайте.

Уникальные просмотры материалов

Больше
8 года 5 мес. назад #1 от Nup
Можно ли как-то заставить Joomla считать уникальных посетителей страниц с материалами? По умолчанию она считает вообще всех посетителей.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Dev banner 2
Больше
8 года 5 мес. назад #2 от serge
Можно, если поставить какое-то joomla-расширение, типа ZT Visitor Counter. либо напрямую работать со статистикой сервера, посредством AWStats или CNStats STD. Или установить счетчики от Яндекса или Гугля... а иначе вроде никак.

А я смогу! - А поглядим! - А я упрямый!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
8 года 5 мес. назад #3 от Nup
Нужен именно подсчет посещений материалов. В стандартном виде в Joomla это хранится в поле hits базы данных. Со счетчиков от Yandex и Google вряд ли удастся получить такую информацию средствами PHP или JavaScript (на крайний случай, не знаю, как там это устроено). А ZT Visitor Counter такое позволяет? Сейчас скрипт, выводящий количество просмотров, просто берет их значение из базы данных.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
8 года 5 мес. назад #4 от serge

Nup пишет: В стандартном виде в Joomla это хранится в поле hits базы данных.


Стоп, если необходимо отобразить на сайте любое значение из БД, то это простая задача. В чем проблема то? Материалов такого рода масса. был даже плагин SQL , позволяющий вывести в материал любое значение из БД. Правда, он для J2.5 наскоко помню.

А я смогу! - А поглядим! - А я упрямый!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
8 года 5 мес. назад #5 от ralf
News Show Pro GK4 (и GK5, вероятно) должны уметь выводить хиты любых статей в модуле.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
8 года 5 мес. назад - 8 года 5 мес. назад #6 от Nup
В том и дело, что вывести значение из базы данных - не проблема. В данный момент выводится значение поля hits из таблицы content в качестве счетчика просмотров страницы материала. Но hits - это счетчик вообще всех посещений. Обновишь страницу, и он увеличится. Это плохо, потому что легко накручивается. Вот и узнаю, каким образом можно считать только уникальных посетителей.

Допустим, в день. То есть, сколько бы раз ты ни зашел в день, это считается одним просмотром. В другой день - еще просмотр прибавляется, если зайдешь.
Последнее редактирование: 8 года 5 мес. назад пользователем Nup.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
8 года 5 мес. назад - 8 года 5 мес. назад #7 от Nup
Интересна, вообще, идея счетчика посещений для различных жизненных ситуаций. Если мы считаем посещения для всего сайта, то учитываем там только уникальных посетителей, но каждый день его обнуляем. Нас интересует количество посетителей в день с определенной целью - мы хотим знать, в какой день сайт посещало больше народа, а в какой - меньше.

Если речь идет о счетчике просмотров материала, то здесь 3 варианта: счетчик всех просмотров, без привязки к уникальности посетителей, счетчик уникальных просмотров, каждый день считающий заново (но не обнуляющий показатели) и счетчик уникальных просмотров вообще за все время жизни материала.

Можно сказать, что первый вариант - обман: пользователь имеет возможность накрутить счетчик простыми обновлениями страницы. Но если подумать, зачем пользователю, разместившему материал, накручивать себе просмотры, если за это ему ничего не будет? Вполне логично, что он, наоборот, будет всячески стараться не просматривать свой материал без необходимости, обновляя страницу где-то за его пределами и сверяя количество просмотров с прошлым обновлением - ему важно знать, сколько раз просмотрели его материал, и это число - его единственная статистика.

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

Если вдуматься, то правильный вариант - тот, что расположен внизу, под сайтом - счетчик, ежедневно обнуляющийся, потому что в этом и есть его предназначение - показывать, сколько человек посетило эту страницу в день. Если счетчик не обнуляется, то эта его избирательность - что-то вроде самообмана: тебе кажется, что он считает просмотры точно, потому что он прибавляет значения не так часто, как первый. Но почему он должен каждый день считать заново, при этом не обнуляя своего значения? Получается что-то вроде первого варианта, только с интервалом в 1 день.

Тогда третий вариант. Третий вариант - это просто счетчик уникальных просмотров за все время жизни материала на сайте. Зашел один раз, и все, ты посмотрел - больше ты значение этого счетчика не повысишь. Но если пользователь просмотрел материал, потом ушел с сайта, вернулся через год и вновь его просмотрел? Технически он не будет новым посетителем, но за этот год он вполне мог забыть, что уже читал это раньше, и материал будет для него новым, а отсутствие изменений в счетчике вызовет у него удивление. Логически - этот человек вполне может считаться новым посетителем. Только что это? Не то же ли, что и предыдущий вариант, только с интервалом в 1 год? Огромным минусом такого подхода является и значение счетчика - оно просто будет стоять практически на нуле, и сайт в глазах посетителей будет выглядеть мертвым или недостаточно популярным.

Тогда вернемся к первому варианту. Логично предположить, что обычному посетителю нет особого смысла накручивать просмотры чужому материалу. Своему - тоже, как выяснили несколькими абзацами раньше. В таком случае, повторное возвращение пользователя к материалу не показывает ли его заинтересованность в материале?

Итак, какие выводы мы можем сделать? Нужно четко понимать предназначение каждого из счетчиков и то, какую статистическую выгоду можно из них извлечь. Третий вариант показывает нам количество пользователей, просмотревших материал за все время его существования. Пользы здесь видится мало. Второй вариант - это модифицированный первый, притом, его модификация носит более самообнанный характер, и точность здесь, скорее, кажущаяся. Первый вариант - напротив, скорее показывает общую заинтересованность в твоем материале: чем чаще человек возвращался к нему, тем сильнее он ему понравился или, возможно, в чем-то пригодился. Такие варианты, как "показать другу со своего компьютера" - вообще не отслеживаются, и в этом ни один из счетчиков стопроцентной точности нам не даст.

Впрочем, применение второму варианту есть: если количество просмотров материала несет какую-то выгоду для его автора, второй вариант исключает возможность его простой накрутки. Но, скорее даже, в этом случае более уместен третий вариант.

Хотелось бы увидеть размышления по поводу написанного - что вы думаете, верно ли я рассуждаю, и какие, вообще, варианты распространены. А то вполне может получиться, что мое стремление поставить именно такой счетчик принесет только лишние проблемы, а пользы не принесет никакой.
Последнее редактирование: 8 года 5 мес. назад пользователем Nup.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
8 года 5 мес. назад #8 от Unior82

Nup пишет: То есть, сколько бы раз ты ни зашел в день, это считается одним просмотром.


Привет, что-то подобное я видел, только там это условие соблюдалось для авторизованных пользователей. Попробуй подумать как поменять авторизованного юзверя на повторение одного и того же ip, и проблема накрутки хитов решена. Вот такой рабочий код жумла-плагина, совсем простой:


Code:
class plgContentReduceHits extends JPlugin { public function onContentAfterDisplay($context, &$article, &$params, $limitstart) { if ($context == 'com_content.article' && JFactory::getUser()->id == $article->created_by && $params->get('intro_only')) { $db = JFactory::getDbo(); $db->setQuery('UPDATE #__content SET hits = hits - 1 WHERE id = ' . $article->id); $db->execute(); } return ''; } }

Есть еще этот плагин:

JProNoHitCount is the long awaited plugin that allows you to disable hit count on articles for users belonging to specific groups.


но я не знаю, позволяет ли он исключать из подсчета дубли хитов неавторизованных пользователей.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
8 года 5 мес. назад #9 от Unior82

Nup пишет: Хотелось бы увидеть размышления по поводу написанного - что вы думаете, верно ли я рассуждаю, и какие, вообще, варианты распространены. А то вполне может получиться, что мое стремление поставить именно такой счетчик принесет только лишние проблемы, а пользы не принесет никакой.


только два простых вопроса:
  1. на кой ляд вообще показывать посетителям сайта статистику сайта?
  2. чем не устраивает Google Analytics или Метрика, предлагающие самые различные варианты подсчета трафика на сайт? их кстати можно вывести в бакенд Joomla (а при желании и во фронтенд, используя API, правда последнее не пробовал , незачем было).

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
8 года 5 мес. назад #10 от Nup
Unior82, я уже писал выше про Yandex и Google. Мне нужна не полная статистика сайта, а статистика просмотров страниц материалов. Что-то вроде графы "Просмотры" на этом форуме, у каждой из тем.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Работает на Kunena форум