Перейти к публикации

Хак: самый просматриваемый материал за неделю и месяц


Рекомендованные сообщения

Уважаемые мастера!

Прошу вашей помощи в написании хака для вывода: Самого просматриваемого материала за неделю и месяц.

За текущий день - хак уже успешно выводит посты.

 

Но вот незадача, как прописать в файле: 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 файл сбрасывал счетчик каждую неделю и соответственно еще одно условие для сброса за месяц?

 

Помогите пожалуйста советом, всё остальное вроде как есть :unsure:

Ссылка на сообщение
Поделиться на других сайтах

{custom  days="7"  limit="10"  order="reads"} - выведет 10 самых проматриваемых новостей за последние 7 дней

{custom  days="30"  limit="10"  order="reads"}  выведет 10 проматриваемых  новостей за последний месяц



 

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

Изменено пользователем alex32
Ссылка на сообщение
Поделиться на других сайтах

Это не совсем так.

ДЛЕ позволяет сделать такой вывод т.с. топорно.

А хак позволяет не только выводить популярное за сутки и т.д., но и к каждой новости дописывать сколько просмотров прибавилось (+123 и т.д.)

Вот в чем дело.

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...
В 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 и ежедневно обсчитывать и обновлять их значения.

Для вывода тоже надо доработать или сделать новый модуль популярных новостей.

Изменено пользователем MSK
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...