Возьмите пример сайта вопросов / ответов со слайд-шоу «Обзор», на котором будет отображаться одна страница вопросов / ответов за раз. Пользователь нажимает кнопку «Далее», и ему представляется новый вопрос / ответ.
Мне нужно решить, какие страницы следует возвращать каждый раз, когда пользователь нажимает кнопку «Далее». Некоторые вещи, которые я не хочу, и причины, по которым:
Отображение «новейших» вопросов в порядке убывания:
Скажите, что введено 100 вопросов, тогда ни один пользователь не будет переходить к 100-му пункту, и он никогда не получит никаких ответов. Это также означает, что если в последнее время не задавались новые вопросы, каждый раз, когда пользователь посещает сайт, он будет видеть одни и те же повторные устаревшие данные.
Отображение «наиболее активных» вопросов, судя по множеству предложенных ответов / комментариев:
Это не вернет те вопросы, которые имеют низкую активность, а именно те, которые нуждаются в большей наглядности
Показаны вопросы «низкой активности», судя по небольшому количеству ответов / комментариев:
Как только вопрос станет активным, он перестанет показываться. Это помешает работе над вопросом, когда я действительно хотел бы стимулировать обсуждение.
Я чувствую, что их сочетание будет работать хорошо, но я не уверен, как определить, какие страницы следует вернуть. Подчеркну, что я не хочу, чтобы пользователю приходилось выбирать, какую категорию элементов просматривать (например, как SO имеет фильтры без ответа / активные / новейшие).
Существуют ли общие практики для этого или какие-либо идеи о том, как это можно сделать?
Спасибо!
Edit:
Вот то, к чему я склоняюсь, благодаря комментарию Тима:
До сих пор я думал о ранжировании страниц по количеству активности / количеству просмотров, где активность увеличивается каждый раз, когда пользователь выполняет какое-либо действие на странице, такое как голосование, комментарий, ответ и т. Д. Вид будет увеличиваться для каждой страницы каждый раз. человек просматривает страницу.
Затем я буду ранжировать все страницы по их соотношению активность / просмотр и чаще показывать страницы с высоким соотношением. Таким образом, страницы с низкой активностью и высоким просмотром будут показываться наименьшим образом, тогда как страницы с высокой активностью и низким просмотром будут показываться чаще всего. Я предполагаю, что где-то посередине будет низкая активность / низкие просмотры и высокая активность / высокие просмотры, но мне придется пристально следить за этим в бета-версии. Я также планирую сохранить страницы, которые пользователь просмотрел за последние 24 часа, чтобы они не увидели повторов в слайд-шоу за определенный день.
Некоторые идеи по предотвращению «устаревших» данных (если все вышеперечисленное, по-видимому, не препятствует этому): возможно, запустите задание cron, которое будет периодически проверять страницы, которые не были просмотрены недавно, и увеличивать их соотношение, чтобы поместить их наверху.