Dleshka.org
Авторизация

Хак Хак Топ просмотров новостей за текущий день

+6
TipTop 9-12-2013 Хаки DLE 1 комментарий


Интересный хак для DLE, который с помощью тега custom даст вам просматривать материал за текущий день.

Особенность хака в том, что в счетчике просмотров учитываются только просмотры за текущий день, т.е. с 00:01 до текущего момента.

Шаблон:
{title} - ({views} + <b>{day_read}</b>)<br/>


{title} - просто заголовок
{views} - общее количество просмотров, стандартно
{day_read} - количество просмотров за текущий день

Так же отдельно стоит отметить, что данный метод работает только при выключенном (!) кешировании счетчика просмотров.

Установка:
Выполнить запрос в БД:
ALTER TABLE `dle_post_extras` ADD `day_read` INT( 6 ) NOT NULL DEFAULT '0';



Открыть файл engine/modules/functions.php
Найти строку:
 if ($match[1] == "title" ) $news_msort = "ASC";


После нее вставить:
 if ($match[1] == "day_read" ){
            $sql_select = str_replace("e.news_read, ","e.news_read, e.day_read, ",$sql_select);
            $news_sort = $match[1]." DESC, news_read";
        }



Открыть файл engine/modules/show.full.php
Найти код (2шт):
news_read=news_read+1


Заменить на:
news_read=news_read+1, day_read=day_read+1



Открыть файл engine/modules/cron.php
Найти строку:
if( $cron == 2 ) {


После нее вставить:
$db->query( "UPDATE " . PREFIX . "_post_extras SET day_read=0" );


Это будет сбрасывать ежедневный счетчик.


Этот пункт выполнять только если нужна возможность вывода тега {day_read}
Открыть файл engine/modules/show.custom.php
Найти код:
'{views}' => $row['news_read'], 


Заменить на
'{views}' => $row['news_read'], '{day_read}' => $row['day_read'],




В шаблоне сайта выводить, например так:
{custom order="day_read" limit="10"}


Демо

Автор этого хака для DLE
Олег Александрович a.k.a. Sander
Информация
Зарегистрируйтесь чтобы комментировать публикацию.
HITMAN84
22 июля 2016 14:50
+ 0 -
А где пример? мне нужно на киносайт,какой норм есть? :winked:
Авторизация