Добрый вечер.
Подскажите как забацать хук… Хук для +++ просмора записи через каждый час + 100 просмотров.
Я уже устал искать решение… Есть готовый вариант? Поможите!
Спасибо.
InstantCMS 2.X
есть пример?
#1
26 декабря 2019 в 23:24
#2
27 декабря 2019 в 09:45
Что означает +++?
Есть хук content_before_item там можете проверить
Почему 99? хук вызывается до увеличение счетчика, поэтому 1 просмотр пропускам
Есть хук content_before_item там можете проверить
Почему 99? хук вызывается до увеличение счетчика, поэтому 1 просмотр пропускам
#3
28 декабря 2019 в 03:17
Спасибо за подсказку.хук content_before_item
это я так неправильно(по своему) выразился.Что означает +++
Тут задачка простая… создать видимость посещений/просмотров.
Теперь буду думать про рандомайз.
Сегодня в 16:08
Наиболее простой способ (+ 5 при каждом просмотре)
\system\controllers\content\model.php
или так… (через рандом)
или так… (через запрос в базу данных )
1- Установить кол. просмотров на значение 200 (на всякий пожарный! т.к. есть записи с нулевым значением)
2 — Теперь 200 * 3 = 600
3 — Тут уже 600 + разброс на 200
Таким образом… 702, 651, 718, 780, 794…
\system\controllers\content\model.php
public function incrementHitsCounter($ctype_name, $id) { cmsCache::getInstance()->clean('content.item.' . $ctype_name); //return $this->filterEqual('id', $id)->increment($this->table_prefix . $ctype_name, 'hits_count'); // теперь при просмотре + 5 просмотров return $this->filterEqual('id', $id)->increment($this->table_prefix . $ctype_name, 'hits_count', 5); }
public function incrementHitsCounter($ctype_name, $id) { cmsCache::getInstance()->clean('content.item.' . $ctype_name); return $this->filterEqual('id', $id)->increment($this->table_prefix . $ctype_name, 'hits_count', $random_number); }
1- Установить кол. просмотров на значение 200 (на всякий пожарный! т.к. есть записи с нулевым значением)
UPDATE `cms_con_albums` SET `hits_count` = '200'
UPDATE `cms_con_albums` SET `hits_count` = `hits_count` *3;
UPDATE `cms_con_albums` SET `hits_count` = FLOOR(600 + RAND()*200)
#5
29 января 2020 в 19:47
Наиболее простой способ (+ 5 при каждом просмотре)
Слегка палевно))