Генератор CSS-свойства «border-radius»   •   Online-инструменты
1 670 просм
10 комм
Поделиться:

«U.Efficiency» 2.0 – модуль расчета коэффициента активности пользователя для DLE

Здравствуйте, дорогие друзья! Последнее время публикация материалов на нашем сайте резко снизилась. Этому виной и личные дела, и разработка интересных решений для нашей аудитории.

Сегодня мы презентуем долгожданное обновление нашего модуля «U.Efficiency» для DataLife Engine, с помощью которого вы можете рассчитать коэффициент активности ваших пользователей. Работа велась долгая, много было изменено, исправлено и переписано, поэтому – обо всем по порядку.

Что входит в расчет коэффициента?

Как и раньше, в расчет коэффициента активности входят: общие числа написанных комментариев пользователя, добавленных новостей и просмотренных страниц сайта за время существования пользователя на сайте. Помимо этого, в версии 2.0 включен подсчет числа оцененных комментариев и новостей, что делает расчет более точным и интересным.

Техническая информация и расчет коэффициента

За каждое совершенное действие пользователь получает:

0.01 е. а. за 1 просмотренную страницу сайта;
0.05 е. а. за 1 оцененный материал;
0.05 е. а. за 1 оцененный комментарий;
0.1 е. а. за 1 добавленный комментарий;
1 е. а. за 1 добавленный материал.

Е. а. – единица активности.

«U.Efficiency» 2.0 – модуль расчета коэффициента активности пользователя для DLE

На выходе пользователю показывается его активность в процентах, где 0% – минимальная активность, 100% – максимальная. Поскольку коэффициент напрямую зависит от времени, то с его течением, при отсутствии какой-либо деятельности со стороны пользователя, коэффициент снижается.

В предыдущей версии существовало всего 4 наименования коэффициента. Это: «нулевой», «низкий», «средний», «высокий». В этой же версии добавлено еще одно наименование – «максимальный», которое присваивается пользователю в том случае, если его процент активности равняется 100.

Обратите внимание! Мы с вами знаем, что гости тоже могут оставлять комментарии и оценивать материалы вашего сайта, но для них коэффициент активности не рассчитывается.

Где можно вывести коэффициент активности пользователя?

Мы всегда прислушиваемся к мнению и желаниям наших читателей, поэтому внесли в модуль возможность вывести коэффициент активности в ряде мест. Теперь коэффициент активности можно вывести:

  1. На персональной странице пользователя;
  2. В полной странице материала (у автора материала соответственно);
  3. В карточке профиля пользователя;
  4. В комментариях.

Установка модуля

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

1. Зайдите в phpMyAdmin и выполните SQL-запрос (о том, как это сделать, читайте в этой статье):

CREATE TABLE `dle_efficiency` ( `user_id` INT(11) NULL DEFAULT '0' , `views_page` INT(11) NOT NULL DEFAULT '0', UNIQUE (`user_id`) ) ENGINE = MyISAM;

Если ранее модуль был установлен – пропустите этот шаг.

2. Скачайте архив в конце статьи. Разархивируйте его и содержимое загрузите на ваш сайт по FTP в папку /engine/.

3. Далее, в шаблоне вашего сайта, перед закрывающим тегом </body> вставьте:

{include file="/engine/modules/u_efficiency/numb_views_page.php"}

<link rel="stylesheet" type="text/css" href="/engine/skins/u_efficiency/style.css" />

4. На этом установка модуля закончена. Далее мы настроим вывод коэффициента в нужных местах.

Вывод коэффициента активности на персональной странице пользователя

1. Откройте файл profile.php в папке /engine/modules/.

2. Найдите строку, содержащую:

$tpl->set( '{registration}', langdate( "j F Y H:i", $row['reg_date'] ) ); 

и после нее вставьте:

$tpl->set("{reg_date}", langdate("j.m.Y", $row["reg_date"]));

Сохраните изменения и отправьте файл обратно на сайт.

3. Откройте файл userinfo.tpl в папке /templates/название_темы и в нужное место вставьте:

<div><span>Коэффициент активности:</span> {include file="/engine/modules/u_efficiency/u_efficiency.php?&userName={usertitle}&all_plus_comments={comm-num}&all_plus_news={news-num}&reg_date={reg_date}"}</div>

4. На этом настройка вывода коэффициента на персональной странице закончена.

Вывод коэффициента активности в карточке профиля пользователя

1. Откройте файл profile.php в папке /engine/ajax/.

2. Найдите строку, содержащую:

$tpl->set( '{registration}', langdate( "j F Y H:i", $row['reg_date'] ) );

и после нее вставьте:

$tpl->set("{reg_date}", langdate("j.m.Y", $row["reg_date"])); 
$tpl->set("{usertitle}", stripslashes( $row["name"]));

Сохраните изменения и отправьте файл обратно на сайт.

3. Откройте файл profile_popup.tpl в папке /templates/название_темы и в нужное место вставьте:

<div><span>Коэффициент активности:</span> {include file="/engine/modules/u_efficiency/u_efficiency.php?&userName={usertitle}&all_plus_comments={comm-num}&all_plus_news={news-num}&reg_date={reg_date}"}</div>  

4. На этом настройка вывода коэффициента в карточке профиля пользователя закончена.

Вывод коэффициента активности в полной версии материала и в комментариях к нему

1.1 Для того чтобы вывести коэффициент активности у автора материала, откройте файл fullstory.tpl в папке /templates/название_темы и в нужное место вставьте:

<div><span>Коэффициент активности:</span> {include file="/engine/modules/u_efficiency/u_efficiency.php?&userName={login}"} </div> 

2.1 Для того чтобы вывести коэффициент активности у автора комментария, откройте файл comments.tpl в папке /templates/название_темы и в нужное место вставьте:

<div><span>Коэффициент активности:</span> {include file="/engine/modules/u_efficiency/u_efficiency.php?&userName={login}"}</div>

3. На этом настройка вывода коэффициента в полной версии материала и комментариев к нему закончена.

Модуль тестировался на DLE версии 10.6–11.3. Если в ходе установки и использования модуля возникли вопросы – пишите об этом в комментариях.

ФайлРазмерСсылка
10
комментарий
Виталий
23.08 в 10:13
Круть, спасибо большое за модуль.

Можешь подсказать как можно вывести данные в login.tpl

<div><span>Коэффициент активности:</span> {include file="/engine/modules/u_efficiency/u_efficiency.php?&userName={login}"} </div> - это выводит любому пользователю 0.
  • 1
Виталий, напишите нам через «ВКонтакте» - посмотрим на ваш сайт и постараемся помочь.
  • 5
Виталий
23.08 в 16:48
А как найти вас в вк?
  • 0
Виталий, ссылки на группы есть на главной странице сайта
  • 10
Valery
15.03 в 18:34
the form does not work properly. for an author with 21000 published articles he puts 3% confuse
  • 0
Valery, The script works on this principle. If the user has not added anything over time (from the moment of registration to this day), his activity percentage is reduced.
  • 12
Valery
16.03 в 16:40
Artem, uploader has added more 21000 articles from april 2016 to today...... and add articles all days.....
  • 0
Valery, Hmm ... Very strange. The module is based on pure mathematics and logically, such an author should have 100% efficiency.

Can I take a look at the site?
  • 5
I think I understood what the problem is. But I need FTP access to the site. Can you give it to me?
  • 5
DarkShin
22.04 в 19:06
Круто спасибо за доработку. Теперь можно сразу в комментариях и в новостях увидеть активность. А то первая версия была "жуткая" из своего профиля приходилось не вылазить )))) Так как только там вроде работала и для пользователей невозможная (.
Хотелось узнать ответ на вышестоящий вопрос про добавление login.tpl.
Как сделать чтобы там работало?
Суть проблемы я понял, надо что-то менять в скрипте, так как везде пишет - "Коэффициент активности: 0% - Нулевой [?]" Кроме как в новости, там в login.tpl. правильно отображает.
Значит скрипт привязан отображать инфу на уровне fullstory.tpl.
Можно это исправить или ждать новую версию мега новой версии нового поколения) ?
  • 0
Оставить комментарий:
Нажимая кнопку «Отправить» вы даете согласие на обработку своих персональных данных.
Имя и фамилия
E-mail
Текст комментария