tobee 16 Опубликовано: 8 ноября 2015 Рассказать Опубликовано: 8 ноября 2015 Уважаемые мастера! Прошу вашей помощи в написании хака для вывода: Самого просматриваемого материала за неделю и месяц. За текущий день - хак уже успешно выводит посты. Но вот незадача, как прописать в файле: engine/modules/cron.php после: if( $cron == 2 ) { вставить (это будет сбрасывать ежедневный счетчик): $db->query( "UPDATE " . PREFIX . "_post_extras SET day_read=0" ); Как изменить эту строку (и добавить еще одно условие для месяца): $db->query( "UPDATE " . PREFIX . "_post_extras SET day_read=0" ); чтобы Cron файл сбрасывал счетчик каждую неделю и соответственно еще одно условие для сброса за месяц? Помогите пожалуйста советом, всё остальное вроде как есть Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 942 Опубликовано: 8 ноября 2015 Рассказать Опубликовано: 8 ноября 2015 (изменено) {custom days="7" limit="10" order="reads"} - выведет 10 самых проматриваемых новостей за последние 7 дней {custom days="30" limit="10" order="reads"} выведет 10 проматриваемых новостей за последний месяц Зачем ковырять функционал и лезть в код, если это делатся возмоностями самого движка ЗЫ: счетчик кол-ва просмотра новостей сбарсывается при очистке кеша. В админпанели в настройках скрипта можно установить время аувтоочистки кеша, например, раз в сутки. Изменено 8 ноября 2015 пользователем alex32 Цитата Ссылка на сообщение Поделиться на других сайтах
tobee 16 Опубликовано: 8 ноября 2015 Рассказать Опубликовано: 8 ноября 2015 Автор Это не совсем так. ДЛЕ позволяет сделать такой вывод т.с. топорно. А хак позволяет не только выводить популярное за сутки и т.д., но и к каждой новости дописывать сколько просмотров прибавилось (+123 и т.д.) Вот в чем дело. Цитата Ссылка на сообщение Поделиться на других сайтах
Datagor 31 Опубликовано: 18 ноября 2015 Рассказать Опубликовано: 18 ноября 2015 типа обманем сами себя? Цитата Ссылка на сообщение Поделиться на других сайтах
MSK 289 Опубликовано: 18 ноября 2015 Рассказать Опубликовано: 18 ноября 2015 (изменено) В 08.11.2015, 7:04:30, alex32 сказал: {custom days="7" limit="10" order="reads"} - выведет 10 самых проматриваемых новостей за последние 7 дней {custom days="30" limit="10" order="reads"} выведет 10 проматриваемых новостей за последний месяц Это не верное решение. Вопрос стоял о просмотрах ЗА неделю и месяц. Этот вариант сортирует по просмотрам ЗА ВСЕ время существования новости, но выбирает ДОБАВЛЕННЫЕ за последние 7 и 30 дней. Штатными средствами этого не сделать, т.к. логи просмотра новостей чистятся ежедневно. В данной задаче необходимо хранить логи просмотров 30 дней, добавить 2 поля для счетчиков в таблицу _post_extras и ежедневно обсчитывать и обновлять их значения. Для вывода тоже надо доработать или сделать новый модуль популярных новостей. Изменено 18 ноября 2015 пользователем MSK 1 Цитата Ссылка на сообщение Поделиться на других сайтах
tobee 16 Опубликовано: 18 ноября 2015 Рассказать Опубликовано: 18 ноября 2015 Автор Уже похоже, сделал себе сей хак. Смотрим :) 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.