hitkinor 8 Опубликовано: 23 июля 2017 Рассказать Опубликовано: 23 июля 2017 Добрый день. Обновил сайт до 11,3 Хотел восстановить топ посетителей.Раньше для этого необходимо было открыть файл index.php И под строкой $tpl->load_template ( 'main.tpl' ); добавить строку $tpl->set ('{topusers}', $tpl->result['glamusers']); Открыл файл index.php и не обнаружил там строки $tpl->load_template ( 'main.tpl' ); Подскажите, где сейчас (в каком файле) находится этот оператор? С уважением, Алексей. Лицензии на сайты в аккаунте с тем же логином. Цитата Ссылка на сообщение Поделиться на других сайтах
Captain 623 Опубликовано: 23 июля 2017 Рассказать Опубликовано: 23 июля 2017 /engine/modules/main.php Цитата Ссылка на сообщение Поделиться на других сайтах
hitkinor 8 Опубликовано: 23 июля 2017 Рассказать Опубликовано: 23 июля 2017 Автор Спасибо большое. Действительно там. К сожалению, Топ комментаторов v2.1 by Glam отказался запускаться на DLE 11.3. До этого работал отлично. Видимо, какие то переменные сменили название. Не подскажете, какие имена переменных в скрипте больше не актуальны и на какие нужно заменить?: <?php /* ===================================================== Топ комментаторов v2.1 by Glam ===================================================== */ if(!defined('DATALIFEENGINE')) { die("Hacking attempt!"); } $num = "10"; // сколько пользователей выводим в блоке? $glamusers = dle_cache("glamusers", $config['skin']); $sql = $db->query("SELECT user_id, name, foto, comm_num FROM ".PREFIX."_users order by comm_num DESC LIMIT 0,$num"); while ($row = $db->get_row($sql)) { if ($config['allow_alt_url'] == "yes") { $userlink = "<a href=\"".$config['http_home_url']."user/".urlencode($row['name'])."/\">"; } else { $userlink = "<a href=\"$PHP_SELF?subaction=userinfo&user=".urlencode($row['name'])."/\">"; } if ($row['foto'] !== "") $ava = "{$userlink}<img src=\"".$config['http_home_url']."uploads/fotos/".$row['foto']."\" align=\"center\" width=\"50\"></a>"; else $ava = "{$userlink}<img src=\"{THEME}/images/noavatar.png\" align=\"center\" width=\"50\"></a>"; $nohtml = "'<[\/\!]*?[^<>]*?>'si"; $tpl->load_template('topusers.tpl'); $tpl->set('{ava}', $ava); $tpl->set('{nickname}', $userlink.$row['name'].'</a>'); $tpl->set('{comm_num}', '<a href="/index.php?do=lastcomments&userid='.$row['user_id'].'">'.$row['comm_num'].'</a>'); $tpl->compile('glamusers'); $tpl->clear(); } $db->free(); ?> Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 942 Опубликовано: 23 июля 2017 Рассказать Опубликовано: 23 июля 2017 или вот эту строку убери $glamusers = dle_cache("glamusers", $config['skin']); или кеш создай Цитата Ссылка на сообщение Поделиться на других сайтах
hitkinor 8 Опубликовано: 24 июля 2017 Рассказать Опубликовано: 24 июля 2017 Автор удалил. Не помогло Цитата Ссылка на сообщение Поделиться на других сайтах
hitkinor 8 Опубликовано: 1 августа 2017 Рассказать Опубликовано: 1 августа 2017 Автор Не могу никак справиться со своим модулем. Вставил, как надо, строку $tpl->set ( '{topusers}', $tpl->result['glamusers'] ); в файл engine/modules/main.php : $tpl->load_template ( 'main.tpl' ); $tpl->set ( '{topusers}', $tpl->result['glamusers'] ); $tpl->set ( '{calendar}', $tpl->result['calendar'] ); $tpl->set ( '{archives}', $tpl->result['archive'] ); $tpl->set ( '{tags}', $tpl->result['tags_cloud'] ); $tpl->set ( '{vote}', $tpl->result['vote'] ); $tpl->set ( '{topnews}', $tpl->result['topnews'] ); $tpl->set ( '{login}', $tpl->result['login_panel'] ); $tpl->set ( '{speedbar}', $tpl->result['speedbar'] ); Но скрипт отказывается отображаться в том месте, где в шаблоне установлен {topusers} При этом, переменная $tpl->result['glamusers'] содержит правильный код ТОПа пользователей. Вставлял для проверки оператор echo $tpl->result['glamusers']; ТОП пользователей успешно выводится внизу сайта. Подскажите, в чем проблема? Может, есть какой то запрет на использование {topusers} ? Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 942 Опубликовано: 1 августа 2017 Рассказать Опубликовано: 1 августа 2017 шаблон topusers.tpl в корне папки шаблона сделал? теги {ava} {nickname} {comm_num} в нем есть? Цитата Ссылка на сообщение Поделиться на других сайтах
hitkinor 8 Опубликовано: 1 августа 2017 Рассказать Опубликовано: 1 августа 2017 Автор конечно сделал. И уже давно. Этот скрипт работал на сайте много лет. Перестал работать только при обновлении DLE до 11.3 <table> <tr> <td class="topava">{ava}</td> <td><b>{nickname}</b><br>комментов: {commn_num}</td> </tr> </table> Все у уже перерыл. не могу понять, что в скрипте изменилось. Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 942 Опубликовано: 1 августа 2017 Рассказать Опубликовано: 1 августа 2017 <?php if (!defined('DATALIFEENGINE')) { die("Hacking attempt!");} $num = "10"; // сколько пользователей выводим в блоке? $glamusers = dle_cache("glamusers", $config['skin']); if (!$glamusers) { $sql = $db->query("SELECT user_id, name, foto, comm_num FROM ".PREFIX."_users order by comm_num DESC LIMIT 0,$num"); while ($row = $db->get_row($sql)) { if ($config['allow_alt_url'] == "yes") { $userlink = "<a href=\"".$config['http_home_url']."user/".urlencode($row['name'])."/\">"; } else { $userlink = "<a href=\"$PHP_SELF?subaction=userinfo&user=".urlencode($row['name'])."/\">"; } if ($row['foto'] !== "") $ava = "{$userlink}<img src=\"".$config['http_home_url']."uploads/fotos/".$row['foto']."\" align=\"center\" width=\"50\"></a>"; else $ava = "{$userlink}<img src=\"{THEME}/images/noavatar.png\" align=\"center\" width=\"50\"></a>"; $nohtml = "'<[\/\!]*?[^<>]*?>'si"; $tpl->load_template('topusers.tpl'); $tpl->set('{ava}', $ava); $tpl->set('{nickname}', $userlink.$row['name'].'</a>'); $tpl->set('{comm_num}', '<a href="/index.php?do=lastcomments&userid='.$row['user_id'].'">'.$row['comm_num'].'</a>'); $tpl->compile('glamusers'); } $tpl->clear(); $db->free(); } create_cache( "glamusers", $glamusers, $config['skin'], true ); ?> Цитата Ссылка на сообщение Поделиться на других сайтах
hitkinor 8 Опубликовано: 1 августа 2017 Рассказать Опубликовано: 1 августа 2017 Автор так тоже уже пробовал. Ничего не выводится. Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 942 Опубликовано: 1 августа 2017 Рассказать Опубликовано: 1 августа 2017 (изменено) Хз. Буду когда дле ставить, накидаю. Установленого, на котором проверить можно, нету. Поменяй просто вывод через tpl на вывод из модуля и вставь в main.tpl {include file="engine/modules/topusers.php"} да и все. Изменено 1 августа 2017 пользователем alex32 Цитата Ссылка на сообщение Поделиться на других сайтах
hitkinor 8 Опубликовано: 1 августа 2017 Рассказать Опубликовано: 1 августа 2017 Автор спасибо. так и сделал. Напрямую запустил через {include file="engine/modules/glamusers.php"} Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.