Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.
[RC] Topiclist FX / Список тем
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ).
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ).
Re: [RC] Topiclist FX / Список тем
Кто ни будь может рассказать как разбить ссылки-карту на несколько страниц, а то не хочется в бан влететь, да и страница больно длинная уже.
Ещё бы сделать не в один столбик, а хотя бы в два - ссылки.
Ещё бы сделать не в один столбик, а хотя бы в два - ссылки.
Re: [RC] Topiclist FX / Список тем
Может кого-то устроит такое решение проблемы слишком большого количества тем в списке - отсортировать список по времени последнего поста и ограничить выборку до N записей из каждого форума. Меня во всяком случае более чем устроило...
Например, для списка из 20 тем в includes/acp/acp_topiclist.php найти:
заменить на:
Вместо "LIMIT 20" укажите свое желаемое число.
Если нужно отсортировать по времени создания постов,
вместо "ORDER BY topic_last_post_time"
укажите "ORDER BY topic_time".
Если что не так - пусть гуру меня поправят... Не поверите - первый раз инструкцию пишу!
Добавлено спустя 52 минуты 21 секунду:
В связи с вышеизложенным сразу же попутно возник вопрос к гуру phpBB:
Если в такой укороченный список вставить код синхронизации форумов непосредственно перед генерацией topiclist.php - нагрузка на сервер должна уменьшиться?
Добавлено спустя 1 час 9 минут 36 секунд:
Вот примеры форумов, построенных по такому принципу:
http://www.ua-football.com/forum
http://www.footboom.com/forum
Эххххх... если бы Shredder, или кто-нибудь помог вставить код синхронизации всех форумов прямо в topiclist.php
Например, для списка из 20 тем в includes/acp/acp_topiclist.php найти:
Код: Выделить всё
$sql = 'SELECT topic_id, forum_id, topic_title, topic_type, topic_replies
FROM ' . TOPICS_TABLE . "
WHERE forum_id=$forum
AND topic_approved = 1";
Код: Выделить всё
$sql = 'SELECT topic_id, forum_id, topic_title, topic_type, topic_replies
FROM ' . TOPICS_TABLE . "
WHERE forum_id=$forum
AND topic_approved = 1
ORDER BY topic_last_post_time DESC LIMIT 20";
Если нужно отсортировать по времени создания постов,
вместо "ORDER BY topic_last_post_time"
укажите "ORDER BY topic_time".
Если что не так - пусть гуру меня поправят... Не поверите - первый раз инструкцию пишу!
Добавлено спустя 52 минуты 21 секунду:
В связи с вышеизложенным сразу же попутно возник вопрос к гуру phpBB:
Если в такой укороченный список вставить код синхронизации форумов непосредственно перед генерацией topiclist.php - нагрузка на сервер должна уменьшиться?
Добавлено спустя 1 час 9 минут 36 секунд:
Вот примеры форумов, построенных по такому принципу:
http://www.ua-football.com/forum
http://www.footboom.com/forum
Эххххх... если бы Shredder, или кто-нибудь помог вставить код синхронизации всех форумов прямо в topiclist.php
- Пчелкин
- phpBB 3.3.0
- Сообщения: 11234
- Стаж: 14 лет 2 месяца
- Откуда: fotovideoforum.ru
- Благодарил (а): 1782 раза
- Поблагодарили: 1340 раз
- Контактная информация:
Re: [RC] Topiclist FX / Список тем
[RC] Topiclist FX / Список темSax писал(а):, а хотя бы в два - ссылки.
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Фотовидеофорум ; Форум Кировского района ; Форумы Калдина-Клуба ; Форум Japan Navigation Group
Фотовидеофорум ; Форум Кировского района ; Форумы Калдина-Клуба ; Форум Japan Navigation Group
-
- Former team member
- Сообщения: 2217
- Стаж: 15 лет 3 месяца
- Благодарил (а): 236 раз
- Поблагодарили: 561 раз
- Контактная информация:
Re: [RC] Topiclist FX / Список тем
spacemann писал(а):только на странице topiclist.php. Посетитель будет заходить на страницу и делать обновление, если ему нужно
Подскажите как это сделать, пожалуйста???
Мне кажется, если это сделать, то форум просто ляжет от нагрузки. Потому что каждый раз, когда кто-то будет заходить на страницу карты, будут выполняться высоконагрузочные запросы. Потому и сделали синхронизацию в админке.dndn писал(а):Эххххх... если бы Shredder, или кто-нибудь ;) помог вставить код синхронизации всех форумов прямо в topiclist.php :?:
Re: [RC] Topiclist FX / Список тем
Shredder
Если ограничить количество тем и форумов, то не только не ляжет, а будет еще как стоять!
Мне допустим достаточно до десятка тем и даже не в каждом форуме, а это вообще не нагрузка - я же приводил примеры форумов, где главная страница именно так построена.
Напротив, от того, что список не обновляется автоматически, мне лично пользы от такого мода - ноль.
Пожалуйста, Вы же можете!
Если ограничить количество тем и форумов, то не только не ляжет, а будет еще как стоять!
Мне допустим достаточно до десятка тем и даже не в каждом форуме, а это вообще не нагрузка - я же приводил примеры форумов, где главная страница именно так построена.
Напротив, от того, что список не обновляется автоматически, мне лично пользы от такого мода - ноль.
Пожалуйста, Вы же можете!
- maco8024
- phpBB 1.4.4
- Сообщения: 155
- Стаж: 11 лет 3 месяца
- Откуда: Алтай
- Благодарил (а): 65 раз
- Поблагодарили: 19 раз
Re: [RC] Topiclist FX / Список тем
Уважаемые Гуру, подскажите:
мод стоит давно - проблем не наблюдалось, но недавно (при очередной синхронизации всех форумов) в дебагге обнаружилась ошибка такого содержания:
сама ошибка вот в этой строке:
сообщение об ошибке:
мод стоит давно - проблем не наблюдалось, но недавно (при очередной синхронизации всех форумов) в дебагге обнаружилась ошибка такого содержания:
Код: Выделить всё
Страница: adm/index.php?i=topiclist&mode=index&f=33&action=generate_all
Код: Выделить всё
Файл: [ROOT]/includes/acp/acp_topiclist.php
Код: Выделить всё
$folder_image = '<img src="images/icon_folder_link.gif" alt="' . $user->lang['LINK'] . '" />';
[PHP Notice]
Undefined index: LINK
- HAMMER663
- Former team member
- Сообщения: 2032
- Стаж: 13 лет 11 месяцев
- Откуда: Зеленоград
- Благодарил (а): 77 раз
- Поблагодарили: 249 раз
- Контактная информация:
Re: [RC] Topiclist FX / Список тем
maco8024 не хватает языковой переменной
Надо всего-лишь добавить ее в соответствующий языковой файл
LINK
Надо всего-лишь добавить ее в соответствующий языковой файл
- maco8024
- phpBB 1.4.4
- Сообщения: 155
- Стаж: 11 лет 3 месяца
- Откуда: Алтай
- Благодарил (а): 65 раз
- Поблагодарили: 19 раз
Re: [RC] Topiclist FX / Список тем
HAMMER663 спасибо, оказывается все просто, добавил в common.php, проблема ушла.
- sdakasadist
- phpBB 2.0.0
- Сообщения: 236
- Стаж: 11 лет 3 месяца
- Благодарил (а): 62 раза
- Поблагодарили: 20 раз
Re: [RC] Topiclist FX / Список тем
maco8024 не могли бы показать что и куда добавить, буду благодарен.
- sdakasadist
- phpBB 2.0.0
- Сообщения: 236
- Стаж: 11 лет 3 месяца
- Благодарил (а): 62 раза
- Поблагодарили: 20 раз
Re: [RC] Topiclist FX / Список тем
Как исправить, при синхронизации раздела отдельно , то ссылка имеет такой вид сайт.ru/topic4.html , а если сделать Синхронизировать все форумы , то ссылка имеет такой вид сайт.ru/viewtopic.php?f=9&t=446
-
- Former team member
- Сообщения: 2217
- Стаж: 15 лет 3 месяца
- Благодарил (а): 236 раз
- Поблагодарили: 561 раз
- Контактная информация:
Re: [RC] Topiclist FX / Список тем
sdakasadist
Для SEO-мода, вместо первой части кода, указанного здесь (для acp_topiclist.php), нужно добавить вот это:
Для SEO-мода, вместо первой части кода, указанного здесь (для acp_topiclist.php), нужно добавить вот это:
Код: Выделить всё
case "generate_all":
$url = generate_board_url();
$sql = 'SELECT forum_id, forum_name
FROM ' . FORUMS_TABLE . "";
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$forum = $row['forum_id'];
$html_content = '<li><b><a href="' . $url . '/forum' . $forum . '.html">' . $row['forum_name'] . '</a></b></li>';
$html_content .= '<ul>';
$sql1 = 'SELECT topic_id, forum_id, topic_title, topic_type, topic_replies, topic_approved
FROM ' . TOPICS_TABLE . '
WHERE forum_id = ' . $row['forum_id'] . "
AND topic_approved = 1";
$result1 = $db->sql_query($sql1);
while ($row2 = $db->sql_fetchrow($result1))
{
$pages = $row2['topic_replies'] / $config['posts_per_page'];
$pages = (int) $pages;
if ($pages <= 1)
{
$html_content .= '<li><a href="' . $url . '/topic' . $row2['topic_id'] . '.html">' . $row2['topic_title'] . '</a></li>';
}
else
{
$html_content .= '<li><a href="' . $url . '/topic' . $row2['topic_id'] . '.html">' . $row2['topic_title'] . '</a><br />[ ';
for ($i=1; $i<=$pages; $i++)
{
$html_content .= '<a href="' . $url . '/topic' . $row2['topic_id'] . '-' . $i * $config['posts_per_page'] . '.html">' . ($i+1) . '</a> ';
}
$html_content .= ']</li>';
}
}
$db->sql_freeresult($result1);
$html_content .= '</ul>';
$w = fopen('../topiclist/' . $row['forum_id'] . '.html', 'w');
fwrite($w, $html_content);
fclose($w);
}
$db->sql_freeresult($result);
break;
- sdakasadist
- phpBB 2.0.0
- Сообщения: 236
- Стаж: 11 лет 3 месяца
- Благодарил (а): 62 раза
- Поблагодарили: 20 раз
-
- Former team member
- Сообщения: 2217
- Стаж: 15 лет 3 месяца
- Благодарил (а): 236 раз
- Поблагодарили: 561 раз
- Контактная информация:
Re: [RC] Topiclist FX / Список тем
По поводу автоматической синхронизации:
Но можно обойти это, запуская синхронизацию по крону - например, 1 раз в день:
Выполнить следующие запросы к БД (префикс для таблиц, если он у вас отличается от стандартного phpbb_ - подставьте свой, либо выполняйте через STK):
ВНИМАНИЕ: если хотите, чтобы синхронизация выполнялась не раз в сутки, а например раз в час, то смените в первом запросе число 86400 - на 3600. 3600 - это число секунд в часе. Соответственно, если нужен другой интервал - рассчитайте и подставьте своё число прежде, чем выполнять запрос.
Очистить кеш.
Разархивировать и поместить в папку includes следующий файл: ВНИМАНИЕ: Если вы используете SEO-мод, то вместо файла выше закачайте следующий файл: Открыть файл cron.php
Найти:
Добавить ПЕРЕД:
Открыть includes/functions.php
Добавить после:
Ляжет, ещё как ляжет. И не встанет. Ибо на каждый запрос поисковой системы, которых может быть тысячи в день, будет выполняться куча запросов к БД и генерироваться файлы.dndn писал(а):Shredder
Если ограничить количество тем и форумов, то не только не ляжет, а будет еще как стоять! ;)
Мне допустим достаточно до десятка тем и даже не в каждом форуме, а это вообще не нагрузка - я же приводил примеры форумов, где главная страница именно так построена.
Но можно обойти это, запуская синхронизацию по крону - например, 1 раз в день:
Выполнить следующие запросы к БД (префикс для таблиц, если он у вас отличается от стандартного phpbb_ - подставьте свой, либо выполняйте через STK):
Код: Выделить всё
INSERT INTO `phpbb_config` (config_name, config_value) VALUES ('topiclist_fx_gc', '86400');
INSERT INTO `phpbb_config` (config_name, config_value, is_dynamic) VALUES ('topiclist_fx_last_gc', '0', 1);
Очистить кеш.
Разархивировать и поместить в папку includes следующий файл: ВНИМАНИЕ: Если вы используете SEO-мод, то вместо файла выше закачайте следующий файл: Открыть файл cron.php
Найти:
Код: Выделить всё
}
// Unloading cache and closing db after having done the dirty work.
unlock_cron();
garbage_collection();
exit;
Код: Выделить всё
case 'topiclist_fx':
if (time() - $config['topiclist_fx_gc'] <= $config['topiclist_fx_last_gc'])
{
break;
}
include_once($phpbb_root_path . 'includes/topiclist_fx_sync.' . $phpEx);
topiclist_fx_sync();
break;
Код: Выделить всё
else if ($time_now - $config['session_gc'] > $config['session_last_gc'])
{
$cron_type = 'tidy_sessions';
}
Код: Выделить всё
else if ($time_now - $config['topiclist_fx_gc'] > $config['topiclist_fx_last_gc'])
{
$cron_type = 'topiclist_fx';
}
-
- phpBB 2.0.0
- Сообщения: 242
- Стаж: 11 лет 9 месяцев
- Благодарил (а): 1 раз
- Поблагодарили: 3 раза
Re: [RC] Topiclist FX / Список тем
Хороший вопрос, но так и не нашел ответа на него... неужели никому не нужно это?Альтаир Бергадлер писал(а):В кассу.
Можно ли реализовать сворачивание разделов, если например некоторые просто не интересуют и занимают много свободного пространства.