[final] Recent topics for phpBB3 (Темы на стр. сайта)
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
).
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
-
Slava9
- phpBB 2.0.2
- Сообщения: 321
- Стаж: 17 лет 8 месяцев
- Откуда: Киев
- Благодарил (а): 47 раз
Re: [final] Recent topics for phpBB3 (Темы на стр. сайта)
Добрый день!
У меня снова не все благополучно с этим модом.
Пожалуйста, расскажите как запретить выводить вложения (картинки, фотографии).
Дело в том, что у меня страницы разбиты на 4 столбца и когда этот мод выводит огромную картинку, на главной странице все столбцы деформируются! Мне приходится просто удалять сообщения пользователей, которые прикручивают картинку в первом сообщении :(
Можно как-то запретить вывод картинок из сообщения?
У меня снова не все благополучно с этим модом.
Пожалуйста, расскажите как запретить выводить вложения (картинки, фотографии).
Дело в том, что у меня страницы разбиты на 4 столбца и когда этот мод выводит огромную картинку, на главной странице все столбцы деформируются! Мне приходится просто удалять сообщения пользователей, которые прикручивают картинку в первом сообщении :(
Можно как-то запретить вывод картинок из сообщения?
-
Slava9
- phpBB 2.0.2
- Сообщения: 321
- Стаж: 17 лет 8 месяцев
- Откуда: Киев
- Благодарил (а): 47 раз
-
nissin
- phpBB 3.0.4
- Сообщения: 2229
- Стаж: 18 лет 9 месяцев
- Откуда: Астана
- Благодарил (а): 7 раз
- Поблагодарили: 344 раза
Re: [final] Recent topics for phpBB3 (Темы на стр. сайта)
Например через стили. Что-то вроде:
Ну и конечно обернуть блок с сообщениями в div с установленным id "recentblock".
Код: Выделить всё
#recentblock img { display: none; }-
Slava9
- phpBB 2.0.2
- Сообщения: 321
- Стаж: 17 лет 8 месяцев
- Откуда: Киев
- Благодарил (а): 47 раз
Re: [final] Recent topics for phpBB3 (Темы на стр. сайта)
nissin, спасибо большое! Получилось! Я очень счастлива :)
-
maker
- phpBB 1.0.0
- Сообщения: 2
- Стаж: 16 лет 10 месяцев
Re: [final] Recent topics for phpBB3 (Темы на стр. сайта)
Здравствуйте.
Прошу помощи. Спрашивал совета и помощи на фorum.bb3x.ru - но там мне не помогли. Очень надеюсь на Вас.
Мучаюсь третий день...
Перечитал все 38 страниц в теме, но так и не нашел ответа/решения на мою проблемку.
Все сделал по инструкции, что где нужно поменял заменил, кэш чистил, стиль/тема/шаблон всего 1 на форуме. Тысячу раз все проверил и перепроверил, но так и не показывает на сайте темы форума. Перепробовал несколько вариантов мода от других пользователей и ничего...
http://lawers.2x4.ru/forum/recent.php - здесь можно посмотреть и убедиться
На всякий случай сразу покажу код мода, который пытаюсь установить я.
recent.php
recent_body.html
При вызове на страницы сайта никаких ошибок не выдает, просто не показывает,не выводит темы форума и все... и при прямом обращении к recent.php тоже никаких ошибок нет
Очень прошу Вашей помощи!!! :(
Прошу помощи. Спрашивал совета и помощи на фorum.bb3x.ru - но там мне не помогли. Очень надеюсь на Вас.
Мучаюсь третий день...
Перечитал все 38 страниц в теме, но так и не нашел ответа/решения на мою проблемку.
Все сделал по инструкции, что где нужно поменял заменил, кэш чистил, стиль/тема/шаблон всего 1 на форуме. Тысячу раз все проверил и перепроверил, но так и не показывает на сайте темы форума. Перепробовал несколько вариантов мода от других пользователей и ничего...
http://lawers.2x4.ru/forum/recent.php - здесь можно посмотреть и убедиться
На всякий случай сразу покажу код мода, который пытаюсь установить я.
recent.php
Код: Выделить всё
<?php
/**
*
* @package phpBB3
* @version $Id: recent.php,v 1.1.2 2007/08/21 23:21:39 rxu Exp $
* @copyright (c) 2005 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
/**
* @ignore
*/
/* Config section */
$cfg_ignore_forums = ''; // ids of forums you don't want to display, separated by commas or empty
$cfg_only_forums = ''; // ids of forums you only want to display, separated by commas or empty
$cfg_nm_topics = 15; // number of topics to output
$cfg_max_topic_length = 120; // max topic length, if more, title will be shortened
$cfg_show_replies = true; // show number of replies to topics
$cfg_show_first_post = true; // show first posts of the recent topics
$cfg_show_attachments = true; // show attachments in the first posts of recent topics
/* End of config */
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
//
// Let's prevent caching
//
if (!empty($_SERVER['SERVER_SOFTWARE']) && strstr($_SERVER['SERVER_SOFTWARE'], 'Apache/2'))
{
header ('Cache-Control: no-cache, pre-check=0, post-check=0');
}
else
{
header ('Cache-Control: private, pre-check=0, post-check=0, max-age=0');
}
header('Content-type: text/html; charset=windows-1251');
header('Expires: 0');
header('Pragma: no-cache');
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('common');
//
// Building URL
//
$board_path = generate_board_url();
$viewtopic_url = $board_path . '/viewtopic.' . $phpEx;
// Fetching forums that should not be displayed
$forums = implode(',', array_keys($auth->acl_getf('!f_read', true)));
$cfg_ignore_forums = (!empty($cfg_ignore_forums) && !empty($forums)) ? $cfg_ignore_forums . ',' . $forums : ((!empty($forums)) ? $forums : ((!empty($cfg_ignore_forums)) ? $cfg_ignore_forums : ''));
// Building sql for forums that should not be displayed
$sql_ignore_forums = (!empty($cfg_ignore_forums)) ? ' AND t.forum_id NOT IN(' . $cfg_ignore_forums .') ' : '';
// Building sql for forums that should only be displayed
$sql_only_forums = (!empty($cfg_only_forums)) ? ' AND t.forum_id IN(' . $cfg_only_forums .') ' : '';
// Fetching topics of public forums
$sql = 'SELECT t.topic_id, t.forum_id, t.topic_title, t.topic_last_post_id, t.topic_first_post_id, t.topic_replies, t.topic_replies_real, p.post_id, p.post_text, p.bbcode_uid, p.bbcode_bitfield, p.post_attachment, p.post_approved, t.topic_last_poster_name, t.topic_last_post_time
FROM ' . TOPICS_TABLE . ' AS t, ' . POSTS_TABLE . ' AS p, ' . FORUMS_TABLE . " AS f
WHERE t.forum_id = f.forum_id
$sql_ignore_forums
$sql_only_forums
AND p.post_id = t.topic_first_post_id
AND t.topic_moved_id = 0
ORDER BY t.topic_last_post_id DESC LIMIT $cfg_nm_topics";
$result = $db->sql_query($sql);
$recent_topics = $db->sql_fetchrowset($result);
//
// BEGIN ATTACHMENT DATA
//
if($cfg_show_first_post && $cfg_show_attachments)
{
$attach_list = $update_count = array();
foreach ($recent_topics as $post_attachment)
{
if ($post_attachment['post_attachment'] && $config['allow_attachments'])
{
$attach_list[] = $post_attachment['post_id'];
if ($post_attachment['post_approved'])
{
$has_attachments = true;
}
}
}
// Pull attachment data
if (sizeof($attach_list))
{
if ($auth->acl_get('u_download') )
{
$sql_attach = 'SELECT *
FROM ' . ATTACHMENTS_TABLE . '
WHERE ' . $db->sql_in_set('post_msg_id', $attach_list) . '
AND in_message = 0
ORDER BY filetime DESC, post_msg_id ASC';
$result_attach = $db->sql_query($sql_attach);
while ($row_attach = $db->sql_fetchrow($result_attach))
{
$attachments[$row_attach['post_msg_id']][] = $row_attach;
}
$db->sql_freeresult($result_attach);
}
else
{
$display_notice = true;
}
}
}
//
// END ATTACHMENT DATA
//
foreach ( $recent_topics as $row )
{
$topic_title = censor_text($row['topic_title']);
$topic_title = (utf8_strlen($topic_title) > $cfg_max_topic_length) ? utf8_substr($topic_title, 0, $cfg_max_topic_length) . '…' : $topic_title;
$topic_title = str_replace(array("\r\n", "\r", "\n"), '<br />', $topic_title);
$topic_title = addslashes($topic_title);
// Replies
$replies = ($auth->acl_get('m_approve', $row['forum_id'])) ? $row['topic_replies_real'] : $row['topic_replies'];
// Instantiate BBCode if need be
if ($row['bbcode_bitfield'] !== '')
{
$bbcode = new bbcode(base64_encode($row['bbcode_bitfield']));
}
$message = $row['post_text'];
// Parse the message
$message = censor_text($message);
// Second parse bbcode here
if ($row['bbcode_bitfield'])
{
$bbcode->bbcode_second_pass($message, $row['bbcode_uid'], $row['bbcode_bitfield']);
}
$message = str_replace("\n", '<br />', $message);
// Always process smilies after parsing bbcodes
$message = smiley_text($message);
// Parse attachments
if ($cfg_show_first_post && $cfg_show_attachments && !empty($attachments[$row['post_id']]))
{
parse_attachments($row['forum_id'], $message, $attachments[$row['post_id']], $update_count);
}
$message = str_replace(array("\r\n", "\r", "\n"), '<br />', $message);
$message = addslashes($message);
$message = str_replace('./', $board_path . '/', $message);
$tags = array('dl', 'dt', 'dd');
$message = strip_selected_tags($message, $tags);
$template->assign_block_vars('topicrow', array(
'U_TOPIC' => $viewtopic_url . '?f=' . $row['forum_id'] . '&t=' . $row['topic_id'] . '&view=unread#unread',
'TOPIC_TITLE' => iconv("UTF-8", "cp1251",$topic_title),
'TOPIC_REPLIES' => ($cfg_show_replies) ? '[' . $replies . '] ' : '',
'TOPIC_LAST_POSTER'=>$row['topic_last_poster_name'],
'TOPIC_LAST_POST_TIME'=>gmdate("d M Y, H:i ",$row['topic_last_post_time']),
'S_HAS_ATTACHMENTS' => ($cfg_show_first_post && $cfg_show_attachments && !empty($attachments[$row['post_id']])) ? true : false,
));
if ($cfg_show_first_post)
{
$template->assign_block_vars('topicrow.first_post_text', array(
'TOPIC_FIRST_POST_TEXT' => ($cfg_show_first_post) ? $message : ''
));
}
// Display not already displayed Attachments for this post, we already parsed them. ;)
if ($cfg_show_first_post && $cfg_show_attachments && !empty($attachments[$row['post_id']]))
{
foreach ($attachments[$row['post_id']] as $attachment)
{
$attachment = str_replace(array("\r\n", "\r", "\n"), '<br />', $attachment);
$attachment = str_replace('"./', '"' . $board_path . '/', $attachment);
$tags = array('span', 'dt', 'dd');
$attachment = strip_selected_tags($attachment, $tags);
$template->assign_block_vars('topicrow.first_post_text.attachment', array(
'DISPLAY_ATTACHMENT' => $attachment)
);
}
}
}
$db->sql_freeresult($result);
//
// Load template
//
$template->set_filenames(array(
'body' => 'recent_body.html')
);
//
// Output
//
$template->display('body');
/**
* Works like PHP function strip_tags, but it only removes selected tags.
* Example: * strip_selected_tags('<b>Person:</b> <strong>Larcher</strong>', 'strong') => <b>Person:</b> Larcher
* by Matthieu Larcher
* http://ru2.php.net/manual/en/function.strip-tags.php#76045
*/
function strip_selected_tags($text, $tags = array())
{
$args = func_get_args();
$text = array_shift($args);
$tags = (func_num_args() > 2) ? array_diff($args,array($text)) : (array)$tags;
foreach ($tags as $tag)
{
while(preg_match('/<'.$tag.'(|\W[^>]*)>(.*)<\/'. $tag .'>/iusU', $text, $found))
{
$text = str_replace($found[0],$found[2],$text);
}
}
return preg_replace('/(<('.join('|',$tags).')(|\W.*)\/>)/iusU', '', $text);
}
?>
Код: Выделить всё
<!-- BEGIN topicrow -->
document.writeln('Тема [<a href="{topicrow.U_TOPIC}">{topicrow.TOPIC_TITLE}</a>]. Ответов {topicrow.TOPIC_REPLIES}. Посл. ответ [{topicrow.TOPIC_LAST_POST_TIME}]. Оставил [{topicrow.TOPIC_LAST_POSTER}]<br />\n');
<!-- END topicrow -->
Очень прошу Вашей помощи!!! :(
-
crash
- Former team member
- Сообщения: 6517
- Стаж: 22 года 2 месяца
- Откуда: Бердск
- Поблагодарили: 15 раз
Re: [final] Recent topics for phpBB3 (Темы на стр. сайта)
зашел. Все показывает.maker писал(а):http://lawers.2x4.ru/forum/recent.php - здесь можно посмотреть и убедиться
Добавлено спустя 1 минуту 55 секунд:
а обнови сам шаблон пробовали в разделе стили?
Как правильно задавать вопросы
Для особо одаренных: поиск - это есть круто.
FAQ v.2 | FAQ v.3 | Шаблон запроса
Для особо одаренных: поиск - это есть круто.
FAQ v.2 | FAQ v.3 | Шаблон запроса
-
nissin
- phpBB 3.0.4
- Сообщения: 2229
- Стаж: 18 лет 9 месяцев
- Откуда: Астана
- Благодарил (а): 7 раз
- Поблагодарили: 344 раза
Re: [final] Recent topics for phpBB3 (Темы на стр. сайта)
Хостер в конце файла добавляет свой рекламный блок, возможно проблема с этим связана.maker писал(а):http://lawers.2x4.ru/forum/recent.php - здесь можно посмотреть и убедиться
-
maker
- phpBB 1.0.0
- Сообщения: 2
- Стаж: 16 лет 10 месяцев
Re: [final] Recent topics for phpBB3 (Темы на стр. сайта)
Обновлял, все делал, кэш чистила обнови сам шаблон пробовали в разделе стили?
Хостер ответил на это:Хостер в конце файла добавляет свой рекламный блок, возможно проблема с этим связана.
Администраторы, поодержка, не могли бы вы помочь советом по этой проблеме?о всём виноваты ссылки - иногда меня такое мышление просто убивает, взломали сайт - виноваты ссылки, кривые руки не закрыли тег - виноваты ссылки. Сколько уже можно объяснять, ссылки внедрены в код автоматически и не коём образом не влияют на работу движков (кроме дизайна).
Re: [final] Recent topics for phpBB3 (Темы на стр. сайта)
Добрый вечер
Блокирую доступ Гостям читать форумы - в recent.php соответственно вылетает все в трубу, можно ли как то recent.php научить заходить под другой группой, имеющей такие права как чтение! очень надо!
Блокирую доступ Гостям читать форумы - в recent.php соответственно вылетает все в трубу, можно ли как то recent.php научить заходить под другой группой, имеющей такие права как чтение! очень надо!
-
nissin
- phpBB 3.0.4
- Сообщения: 2229
- Стаж: 18 лет 9 месяцев
- Откуда: Астана
- Благодарил (а): 7 раз
- Поблагодарили: 344 раза
Re: [final] Recent topics for phpBB3 (Темы на стр. сайта)
Код: Выделить всё
// Start session management
$user->session_begin();Код: Выделить всё
$user_id = 6794;
// Start session management
$user->session_begin(false); // no update_session_page
$user->session_create($user_id, false, false, false);Re: [final] Recent topics for phpBB3 (Темы на стр. сайта)
Есть модуль для вывода последних сообщений в самом форуме - на нашел его на форуме, извиняюсь что не тот топик пишу
Так вот после блокировки гостям смотреть сообщения он тоже перестал выдавать последние сообщение
Если в Recent.php это все меняется на ура то в этом модуле подобного не нашел, подскажите как решить проблему
Спасибо!
Так вот после блокировки гостям смотреть сообщения он тоже перестал выдавать последние сообщение
Если в Recent.php это все меняется на ура то в этом модуле подобного не нашел, подскажите как решить проблему
Спасибо!
-
Rayden
- Former team member
- Сообщения: 3739
- Стаж: 21 год 2 месяца
- Поблагодарили: 44 раза
Re: [final] Recent topics for phpBB3 (Темы на стр. сайта)
Помогите найти тот )) Я искал и не нашел - название такое же у них только он админится в админке по количеству вывода на индекс последних сообщений
-
NRJ
- phpBB 1.4.0
- Сообщения: 35
- Стаж: 20 лет 2 месяца
- Откуда: Home Net Telecom
- Благодарил (а): 2 раза
- Поблагодарили: 3 раза
Re: [final] Recent topics for phpBB3 (Темы на стр. сайта)
У меня такой вопрос: а можно сделать так, чтобы мод выводил первое сообщение из определенного топика? или топиков?
I'm strange... Maybe negative...

