Joomla 4. Компонент K2 и форк K2ForJ4 (18 янв 2024)

Если вас, как и меня, достало выслушивать (вычитывать) бесконечные обещания разработчика K2 опубликовать версию компонента K2 под Joomla 4 (без чего невозможно реализовать апгрейд from Joomla 3 to Joomla 4) - воспользуйтесь форком K2ForJ4. Который в данный момент установлен и без каких-либо проблем работает на этом веб-сайте.

Хак модуля Who`s Online Joomla 1.5

Больше
12 года 9 мес. назад - 12 года 8 мес. назад #1 от ralf
ralf создал тему: Хак модуля Who`s Online Joomla 1.5
Этот хак лучше всего подходят для людей, которые уже изменении время жизни сессии своей Joomla 1.5. Если вы когда-либо настраивали эти параметры, лучше всего для вас - иметь этот хак, чтобы отображалась правильная статистика пользователей онлайн. Например, если время жизни сессии составляет до 90 минут, онлайн-статистика пользователей и будет дана в течение 90 минут. Обычно мы увеличиваем время жизни сессии, когда хотим продлить login, но - мы все равно хотим иметь реальную статистику онлайн пользователей, может быть, за 10-20 минут. Так что же нам делать?

Поступаем следующим образом.

Нам необходимо внести изменения в исходный код helper.php в каталоге joomla:
Code:
/modules/mod_whoisonline

Работает это все в Joomla 1.5.x. Мы должны будем изменить два фрагмента файла; первый находится вблизи линии 28, а второй - где-то около 62.

Итак, оригинальный код:
Code:
$query = 'SELECT guest, usertype, client_id' . ' FROM #__session' . ' WHERE client_id = 0';

Меняем на:
Code:
$datenow = date("Y-m-d H:i:s"); $time_string = strtotime($datenow); // Modified query below to only show members/users active in the last 10 minutes $extra_time = 600; //example: 10 min x 60 sec $online_time = ($time_string-$extra_time); $query = "SELECT a.guest, a.usertype, a.client_id" ."\n FROM #__session AS a" ."\n WHERE a.client_id=0 AND a.time>'$online_time'";
И, далее; оригинальный код:
Code:
$query = 'SELECT DISTINCT a.username' . ' FROM #__session AS a' . ' WHERE client_id = 0' . ' AND a.guest = 0';

Меняем на:
Code:
$datenow = date("Y-m-d H:i:s"); $time_string = strtotime($datenow); // Modified query below to only show members/users active in the last 10 minutes $extra_time = 600; //10 min x 60 sec $online_time = ($time_string-$extra_time); // New Query below to only show members/users active in the last 10 minutes $query = "SELECT DISTINCT a.username, a.userid, u.name" ."\n FROM #__session AS a, #__users AS u" ."\n WHERE (a.userid=u.id) AND (a.guest = 0) AND (NOT ( a.usertype is NULL OR a.usertype = '' )) AND a.time>'$online_time'" ."\n ORDER BY ".(($ueConfig['name_format'] > 2) ? "a.username" : "u.name")." ASC";
Это все. Наслаждаемся полученным результатом... :woohoo:
Последнее редактирование: 12 года 8 мес. назад пользователем p.rishard.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Dev banner 2
Работает на Kunena форум