Рейтинг как что-то новое

#1 18 октября 2019 в 18:56
Мальчишки и девчонки! А также их родители! поучаствовать в одной истории не хотите ли? )))
Ладно шутки шутками а дело вот в чем. Есть у нас сообщества и есть там рейтинг (суммарный рейтинг публикаций). И вот я что подумал, было бы не плохо сделать чтоб рейтинг зависел и от кол-во подписчиков и кол-ва контента (сообщества).
а вот саму формулу расчёта придумать не магу, есть у кого какие идеи что на что поделить, что прибавить, на что умножить?
#2 18 октября 2019 в 19:20

формулу расчёта придумать не магу, есть у кого какие идеи что на что поделить, что прибавить

Killer's dream
Что тут думать? Сделать хук, который при подписке на контент плюсует рейтинг автору контента.
#3 18 октября 2019 в 19:23

при подписке на контент плюсует рейтинг автору контента.

Ris
Маленько не то. Есть сообщества (группы компонент) там есть рейтинг сообщества. Этот рейтинг равен сумме рейтинга контента. а я бы хотел сделать чтоб этот рейтинг еще и зависел от кол-ва подписчиков(участников) сообщества и кол-ва контента сообщества. вот и не знаю (не магу сообразить и т.д) что на что умножить, чтоб рейтинг по логической формуле высчитывался а не просто так. например:
есть 1000 рейтинга *( (200 кол-во подписчиков /100) * (68 кол-во контента /100) ) / 100 = новый рейтинг
#4 18 октября 2019 в 19:39

1000 рейтинга *( (200 кол-во подписчиков /100) * (68 кол-во контента /100) ) / 100 = рейтинг

Killer's dream
А где в этой формуле настоящий, честно заработанный рейтинг? Или к нему надо прибавить результат этих вычислений?
#5 18 октября 2019 в 19:43

А где в этой формуле настоящий, честно заработанный рейтинг? Или к нему надо прибавить результат этих вычислений?

Ris
это как пример, а рейтинг честно заработанный в этой формуле цифра 1000 в самом начале
#6 18 октября 2019 в 19:48
Killer's dream,
Есть в компоненте groups готовый хук \system\controllers\groups\hooks\rating_vote.php
  1. <?php
  2.  
  3. class onGroupsRatingVote extends cmsAction {
  4.  
  5. public function run($data){
  6.  
  7. // Обновляем суммарный рейтинг группы
  8. if (!empty($data['target']['parent_type'])){
  9. if ($data['target']['parent_type']=='group'){
  10. $this->model->updateGroupRating($data['target']['parent_id'], $data['vote']['score']);
  11. }
  12. }
  13.  
  14. return $data;
  15.  
  16. }
  17.  
  18. }
Вот в нет можно при каждом голосовании сделать любые манипуляции над рейтингом.
Достать количество материала, подсчитать количество подписчиков, умножить\разделить\прибавить как надо и умножить рейтинг группы на этот коэффициент.
#7 6 января 2023 в 19:39

Достать количество материала, подсчитать количество подписчиков, умножить\разделить\прибавить как надо и умножить рейтинг группы на этот коэффициент.

Ris

С Новым годом! Всем добра

Кто-нибудь может подсказать как это реализовать в коде?

Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.