Субъективная популярность

ЕСТЬ РЕШЕНИЕ InstantCMS 2.X
#1 1 октября 2023 в 20:25

Всем добра!

Вопрос касается наборов типов контента а именно набора «Популярные». Реализуется данный набор в первую очередь за счет сортировки по полю «просмотры» по убыванию.

Вот к примеру если взять доску объявлений или статьи какие-нибудь, то очевидно (и так получается на моём сайте) что у более старые записи имеют в любом случае больше просмотров. Получается с помощью данной метрики не получится отразить объективную популятность (за исключением тех случаев, когда дата публикации одинакова.

На мой взгляд более правильная картина сложилась бы при использовании метрики «просмотры за период». Вот только вопрос как бы это реализовать?

#2 1 октября 2023 в 20:44

ну как вариант в отборе можно добавить например дата больше даты 6 мес. но решение скорее костыльное яем полезное, а так да нет фильтрации за период 

#3 1 октября 2023 в 21:17

В общем рядом с «Просмотры» нужно добавить поле «Просмотры за сутки» = Просмотры / (текущая дата — дата публикации). Т.е. среднее кол-во просмотров в сутки. И по заданию планировщика пересчёт раз в сутки. Кто подскажет как реализовать?

#4 1 октября 2023 в 21:51

 denmois, посмотрите ответ в этой теме instantcms.ru/forum/vyvod-sobytii-segodnja-zavtra-nedelja-mesjac.html

Должно помочь разобраться.

#5 1 октября 2023 в 22:04

 Zau4man, не понимаю чем должна помочь эта тема. Возможно вы не так поняли. здесь интересуют сортировка по количеству просмотров в сутки (период), а не фильтр за определённый период

#6 2 октября 2023 в 08:14

просмотры за период».

denmois

Период чего? Просмотров?

#7 2 октября 2023 в 20:22

Период чего? Просмотров?

Lora

Количество просмотров за промежуток времени

#8 3 октября 2023 в 08:31

Реализуется данный набор в первую очередь за счет сортировки по полю «просмотры» по убыванию.

denmois

А это что? И почему это не отражает реальности, если сортировка по просмотрам? И при чём тут даты? Сначала идут самые просматриваемые, как и заказано. Не совсем понятна суть темы. Ну, лично мне, по крайней мере). Вот сортировка по просмотрам

Изображение

От дат зависимости не  вижу. А вам как надо?

#9 4 октября 2023 в 20:59

А это что? И почему это не отражает реальности, если сортировка по просмотрам? И при чём тут даты? Сначала идут самые просматриваемые, как и заказано. Не совсем понятна суть темы. Ну, лично мне, по крайней мере). Вот сортировка по просмотрам

Lora

Речь идет не просто за просмотры а за реализацию набора "популярные". Здесь я понимаю количество просмотров за определённый период.

К примеру:

Статья №1 опубликована 1 год назад, число просмотров — 100 000

Статья №2 опубликована 1 неделю назад, число просмотров — 50 000

Думаю не подлежит сомнению, что статья №2 более популярна? Я сейчас не беру в учет другие метрики (комментарии, оценки — это само собой)

#10 4 октября 2023 в 21:17

 denmois, такое «искаропки» не сделать.

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

#11 4 октября 2023 в 21:26

Такое поле трудозатрано сделать? Во сколько бы оценили?

Добавлено спустя 5 минут

Вообще я думаю это не мне одному надо, и было бы полезно для движка. Даже на демо есть набор «популярные». И он действительно нужен такой набор. Вот только реализации нет и по факту это набор  «По просмотрам» или как-то так.

Как говорится: Назвался груздем полезай в кузов

#12 4 октября 2023 в 21:56

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

Zau4man

если период, в котором ищем популярное, постоянный, скажем в пределах недели, можно также ввести доп поле hits2  в него дублировать +1 за каждый хит и чистить кроном раз в неделю/в сутки или не чистить в ноль а сбрасывать до какого то минимально возможного значения, которое новые и популярные сейчас материалы легко преодолеют.

У меня есть модуль «популярные материалы» по одному разделу, там «популярные» определяются по количеству просмотров, могу сказать, что новые материалы, которые становятся популярными (много просмотров) не сразу но уверенно выходят вверх списка и начинают опережать ранее опубликованное. Но там мало материалов и редко добавляются новые, возможно если контент часто добавляется это не работает так. + я конечно иногда сбрасываю всё в ноль в бд.

#13 4 октября 2023 в 22:29

если период, в котором ищем популярное, постоянный, скажем в пределах недели, можно также ввести доп поле hits2  в него дублировать +1 за каждый хит и чистить кроном раз в неделю/в сутки или не чистить в ноль а сбрасывать до какого то минимально возможного значения, которое новые и популярные сейчас материалы легко преодолеют.

Нил™

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

#14 7 октября 2023 в 10:03

Го тестить. Добавить поле «Посуточная популярность» к типу контента.

Поле будет заполнено в процессе добавления поля, поэтому уже сразу можно настроить сортировку, примерно так

Изображение

Дальше поле будет пересчитываться в момент просмотра записи.

Делалось просто так. Если что-то пойдет не так, просто удалите новый набор, удалите поле с сайта. Никаких доп. таблиц поле не создает.

Прикрепленный файл
hitsperday20231007-1-0-0.zip 2 Кб
#15 7 октября 2023 в 12:45

Го тестить.

Zau4man

Непонятная, но субъективная популярность. Записи 100 просмотров за 100 дней будут в одном ряду с 10 просмотрами за 10 дней и с 1 просмотром за 1 день.

Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.