Last post topic on index for phpBB3
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
).
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
-
rxu
- phpBB Guru

- Сообщения: 17272
- Стаж: 20 лет 4 месяца
- Откуда: Красноярск
- Благодарил (а): 632 раза
- Поблагодарили: 2412 раз
Last post topic on index for phpBB3
Раз уж сделал (по разным причинам), то решил выложить.
Описание мода: Добавляет в список форумов на главной странице название последней затронутой темы каждого форума.
Внимание: более эффективным является мод last post topic title от nickvergessen, в связи с чем последний рекомендуется к применению вместо данного мода.
Описание мода: Добавляет в список форумов на главной странице название последней затронутой темы каждого форума.
Внимание: более эффективным является мод last post topic title от nickvergessen, в связи с чем последний рекомендуется к применению вместо данного мода.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось rxu 03.01.2010 4:45, всего редактировалось 6 раз.
Причина: Добавление комментария в отношении мода-аналога.
Причина: Добавление комментария в отношении мода-аналога.
-
Палыч
- Former team member
- Сообщения: 9683
- Стаж: 20 лет 4 месяца
- Откуда: Питер
- Благодарил (а): 3 раза
- Поблагодарили: 454 раза
Re: Last post topic on index for phpBB3
content.css
Код: Выделить всё
dd.lastpost {
width: 25%;
font-size: 1.1em;
}Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
-
Pan
- phpBB 1.4.2
- Сообщения: 57
- Стаж: 18 лет 8 месяцев
Re: Last post topic on index for phpBB3
Отличный мод, спасибо автору.
Хочется доработать его "под себя". Подскажите, каким образом сделать так, дабы на последний пост в теме кроме значка вела дата/время последнего поста? Т.е. сделать дату/время последнего поста ссылкой?
И ещё вопрос (как вариант). Возможно ли в принципе сделать так, чтобы дата/время стали ссылкой не на последний пост, а на все посты, не прочитанные пользователем (т.е. ссылка вела на первый не прочитанный пост)?
И чисто визуальный момент. Сейчас вся информация в правой колонке сдвинута влево, выглядит не очень привлекательно. Возможно ли её отцентровать?
Хочется доработать его "под себя". Подскажите, каким образом сделать так, дабы на последний пост в теме кроме значка вела дата/время последнего поста? Т.е. сделать дату/время последнего поста ссылкой?
И ещё вопрос (как вариант). Возможно ли в принципе сделать так, чтобы дата/время стали ссылкой не на последний пост, а на все посты, не прочитанные пользователем (т.е. ссылка вела на первый не прочитанный пост)?
И чисто визуальный момент. Сейчас вся информация в правой колонке сдвинута влево, выглядит не очень привлекательно. Возможно ли её отцентровать?
-
Pan
- phpBB 1.4.2
- Сообщения: 57
- Стаж: 18 лет 8 месяцев
Re: Last post topic on index for phpBB3
Насколько я понимаю, изменения нужно делать где-то в этом куске кода (forumlist_body.html):
Или нужно вносить изменения где-то в пхп-файлы, а не в шаблон?
Код: Выделить всё
<!-- IF forumrow.LAST_POST_TIME --><dfn>{L_LAST_POST}</dfn> <a href="{forumrow.U_LAST_TOPIC_URL}" title="{forumrow.LAST_TOPIC_TITLE_FULL}">{forumrow.LAST_TOPIC_TITLE}</a>
<a href="{forumrow.U_LAST_POST}">{LAST_POST_IMG}</a> <br />{L_POSTED_ON_DATE} {forumrow.LAST_POST_TIME} {L_POST_BY_AUTHOR} {forumrow.LAST_POSTER_FULL}<!-- ELSE -->{L_NO_POSTS}<!-- ENDIF --></span>-
rxu
- phpBB Guru

- Сообщения: 17272
- Стаж: 20 лет 4 месяца
- Откуда: Красноярск
- Благодарил (а): 632 раза
- Поблагодарили: 2412 раз
Re: Last post topic on index for phpBB3
Если нужно первое, то в третьей строке перенесите закрывающий тег </a> в место после {forumrow.LAST_POST_TIME}. Если второе, то нужно создавать ещё переменную в скрипте и передавать её в шаблон, где и прописывать дополнительную ссылку.
По третьему вопросу - к моду отношения не имеет, вопрос по стилям.
По третьему вопросу - к моду отношения не имеет, вопрос по стилям.
-
Pan
- phpBB 1.4.2
- Сообщения: 57
- Стаж: 18 лет 8 месяцев
Re: Last post topic on index for phpBB3
Благодарю за подсказку. С первым вопросом сделал по Вашему совету, то, что нужно. Со вторым - бог с ним, раз это слишком сложно. С третьим тоже разобрался, нашёл в стилях.
Ещё раз спасибо
Ещё раз спасибо
-
PH@NT0M
- phpBB 1.2.0
- Сообщения: 18
- Стаж: 18 лет 5 месяцев
Re: Last post topic on index for phpBB3
Теперь вместо:
Должно быть:
И я так думаю вместо:
Должно быть:
И аналогично для второго стиля я так думаю вместо:
Должно быть:
Код: Выделить всё
Find
<!-- IF forumrow.LAST_POST_TIME --><dfn>{L_LAST_POST}</dfn> {L_POST_BY_AUTHOR} {forumrow.LAST_POSTER_FULL}
<a href="{forumrow.U_LAST_POST}">{LAST_POST_IMG}</a> <br />{L_POSTED_ON_DATE} {forumrow.LAST_POST_TIME}<!-- ELSE -->{L_NO_POSTS}<!-- ENDIF --></span>Код: Выделить всё
Find
<!-- IF forumrow.LAST_POST_TIME --><dfn>{L_LAST_POST}</dfn> {L_POST_BY_AUTHOR} {forumrow.LAST_POSTER_FULL}
<!-- IF not S_IS_BOT --><a href="{forumrow.U_LAST_POST}">{LAST_POST_IMG}</a> <!-- ENDIF --><br />{L_POSTED_ON_DATE} {forumrow.LAST_POST_TIME}<!-- ELSE -->{L_NO_POSTS}<!-- ENDIF --></span>Код: Выделить всё
Replace With
<!-- IF forumrow.LAST_POST_TIME --><dfn>{L_LAST_POST}</dfn> <a href="{forumrow.U_LAST_TOPIC_URL}" title="{forumrow.LAST_TOPIC_TITLE_FULL}">{forumrow.LAST_TOPIC_TITLE}</a>
<a href="{forumrow.U_LAST_POST}">{LAST_POST_IMG}</a> <br />{L_POSTED_ON_DATE} {forumrow.LAST_POST_TIME} {L_POST_BY_AUTHOR} {forumrow.LAST_POSTER_FULL}<!-- ELSE -->{L_NO_POSTS}<!-- ENDIF --></span>Код: Выделить всё
Replace With
<!-- IF forumrow.LAST_POST_TIME --><dfn>{L_LAST_POST}</dfn><!-- IF not S_IS_BOT --> <a href="{forumrow.U_LAST_TOPIC_URL}" title="{forumrow.LAST_TOPIC_TITLE_FULL}">{forumrow.LAST_TOPIC_TITLE}</a><!-- ENDIF -->
<!-- IF not S_IS_BOT --><a href="{forumrow.U_LAST_POST}">{LAST_POST_IMG}</a> <!-- ENDIF --><br />{L_POSTED_ON_DATE} {forumrow.LAST_POST_TIME} {L_POST_BY_AUTHOR} {forumrow.LAST_POSTER_FULL}<!-- ELSE -->{L_NO_POSTS}<!-- ENDIF --></span>Код: Выделить всё
Replace With
<p class="topicdetails">{forumrow.LAST_POST_TIME} {forumrow.LAST_POSTER_FULL}</p>
<p class="topicdetails"><a href="{forumrow.U_LAST_TOPIC_URL}" title="{forumrow.LAST_TOPIC_TITLE_FULL}">{forumrow.LAST_TOPIC_TITLE}</a>Код: Выделить всё
Replace With
<p class="topicdetails">{forumrow.LAST_POST_TIME} {forumrow.LAST_POSTER_FULL}</p>
<p class="topicdetails"><!-- IF not S_IS_BOT --><a href="{forumrow.U_LAST_TOPIC_URL}" title="{forumrow.LAST_TOPIC_TITLE_FULL}">{forumrow.LAST_TOPIC_TITLE}</a><!-- ENDIF -->-
DAV
- phpBB 1.0.0
- Сообщения: 1
- Стаж: 17 лет 9 месяцев
Re: Last post topic on index for phpBB3
Здравствуйте, вопрос такой:
Установил мод, но все отображается только на главной странице, если же зайти в форум с подфорумами, то там мод уже не присутствует.
Самому найти решения не получилось, подскажите пожалуйста.
Установил мод, но все отображается только на главной странице, если же зайти в форум с подфорумами, то там мод уже не присутствует.
Самому найти решения не получилось, подскажите пожалуйста.
-
FladeX
- Former team member
- Сообщения: 1935
- Стаж: 19 лет 3 месяца
- Откуда: Саранск
- Благодарил (а): 7 раз
- Поблагодарили: 59 раз
Re: Last post topic on index for phpBB3
styles/prosilver/template/forumlist_body.html
В инструкции ищется такой код:
и заменяется на такой:
А в phpBB 3.0.4 исходный код немного другой:
Может и код-замену сделать так:
Добавлено спустя 1 минуту 22 секунды:
Условие не_бот добавляется, если вкратце
В инструкции ищется такой код:
Код: Выделить всё
<!-- IF forumrow.LAST_POST_TIME --><dfn>{L_LAST_POST}</dfn> {L_POST_BY_AUTHOR} {forumrow.LAST_POSTER_FULL}
<a href="{forumrow.U_LAST_POST}">{LAST_POST_IMG}</a> <br />{L_POSTED_ON_DATE} {forumrow.LAST_POST_TIME}<!-- ELSE -->{L_NO_POSTS}<!-- ENDIF --></span>Код: Выделить всё
<!-- IF forumrow.LAST_POST_TIME --><dfn>{L_LAST_POST}</dfn> <a href="{forumrow.U_LAST_TOPIC_URL}" title="{forumrow.LAST_TOPIC_TITLE_FULL}">{forumrow.LAST_TOPIC_TITLE}</a>
<a href="{forumrow.U_LAST_POST}">{LAST_POST_IMG}</a> <br />{L_POSTED_ON_DATE} {forumrow.LAST_POST_TIME} {L_POST_BY_AUTHOR} {forumrow.LAST_POSTER_FULL}<!-- ELSE -->{L_NO_POSTS}<!-- ENDIF --></span>Код: Выделить всё
<!-- IF forumrow.LAST_POST_TIME --><dfn>{L_LAST_POST}</dfn> {L_POST_BY_AUTHOR} {forumrow.LAST_POSTER_FULL}
<!-- IF not S_IS_BOT --><a href="{forumrow.U_LAST_POST}">{LAST_POST_IMG}</a> <!-- ENDIF --><br />{forumrow.LAST_POST_TIME}<!-- ELSE -->{L_NO_POSTS}<br /> <!-- ENDIF --></span>Код: Выделить всё
<!-- IF forumrow.LAST_POST_TIME --><dfn>{L_LAST_POST}</dfn> <a href="{forumrow.U_LAST_TOPIC_URL}" title="{forumrow.LAST_TOPIC_TITLE_FULL}">{forumrow.LAST_TOPIC_TITLE}</a>
<!-- IF not S_IS_BOT --><a href="{forumrow.U_LAST_POST}">{LAST_POST_IMG}</a> <!-- ENDIF --><br />{L_POSTED_ON_DATE} {forumrow.LAST_POST_TIME} {L_POST_BY_AUTHOR} {forumrow.LAST_POSTER_FULL}<!-- ELSE -->{L_NO_POSTS}<!-- ENDIF --></span>Условие не_бот добавляется, если вкратце
//
// Okay, let's do the loop, yeah come on baby let's do the loop
// and it goes like this ...
| phpBB Adept ] | Каталог форумов | генератор sitemap для форумов | форум про форумы
// Okay, let's do the loop, yeah come on baby let's do the loop
// and it goes like this ...
| phpBB Adept ] | Каталог форумов | генератор sitemap для форумов | форум про форумы
-
trooper
- phpBB 1.2.1
- Сообщения: 28
- Стаж: 18 лет 5 месяцев
- Благодарил (а): 10 раз
- Поблагодарили: 1 раз
Re: Last post topic on index for phpBB3
дело в том, что ссылка "Название темы" имеет вид "viewtopic.php?f=1&t=1" вместо "topic1.html"
как можно исправить?
как можно исправить?
-
deseven
- phpBB 1.0.0
- Сообщения: 9
- Стаж: 17 лет 7 месяцев
Re: Last post topic on index for phpBB3
можно как-нибудь сделать чтобы ссылка вела не на сам топик, а на последнее непрочитанное сообщение в этом топике?
-
rxu
- phpBB Guru

- Сообщения: 17272
- Стаж: 20 лет 4 месяца
- Откуда: Красноярск
- Благодарил (а): 632 раза
- Поблагодарили: 2412 раз
Re: Last post topic on index for phpBB3
Правильно прописать правило для mod_rewrite, но к данному моду это не имеет отношения, скорее к документации по мод_реврайту.trooper писал(а):как можно исправить?
Нужно читать тему с начала. На второй странице имеется ответ http://www.phpbbguru.net/community/topi ... ml#p182271deseven писал(а):можно как-нибудь сделать чтобы ссылка вела не на сам топик, а на последнее непрочитанное сообщение в этом топике?
-
mith
- phpBB 1.4.1
- Сообщения: 41
- Стаж: 18 лет 11 месяцев
- Откуда: Москва
Re: Last post topic on index for phpBB3
deseven
Я использовал для этого мода исправление с третьей страницы(исправленная бага с кавычками + ссылка, ведущая к первому непрочитанному ссобщению)
Для SEO-мода та фича для $last_topic_title и $last_topic_url в файле includes/functions_display.php должна быть поправлена вот так:
Ссылка будет иметь вид post1048918.html#unread.
Я использовал для этого мода исправление с третьей страницы(исправленная бага с кавычками + ссылка, ведущая к первому непрочитанному ссобщению)
Для SEO-мода та фича для $last_topic_title и $last_topic_url в файле includes/functions_display.php должна быть поправлена вот так:
Код: Выделить всё
$last_topic_title = (utf8_strlen(htmlspecialchars_decode($last_topic_title_full)) > 30) ? utf8_substr(htmlspecialchars_decode($last_topic_title_full), 0, 30) . '…' : $last_topic_title_full;
$last_topic_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $last_topic_row['forum_id'] . '&t=' . $last_topic_row['topic_id'] . '&p='. $last_topic_row['topic_last_post_id'] .'#unread');-
Amberon
- phpBB 1.2.0
- Сообщения: 11
- Стаж: 17 лет 11 месяцев
Re: Last post topic on index for phpBB3
Код: Выделить всё
if(!empty($forums_last_posts_ids_list))
{
$sql = 'SELECT topic_id, topic_title, topic_last_post_id, forum_id FROM ' . TOPICS_TABLE . ' WHERE topic_last_post_id IN (' . implode(',', $forums_last_posts_ids_list) . ')';
$last_topic_result = $db->sql_query($sql);
while($last_topic_row = $db->sql_fetchrow($last_topic_result))
{
$last_topic_title_full = censor_text($last_topic_row['topic_title']);
$last_topic_title = (utf8_strlen($last_topic_title_full) > 30) ? utf8_substr($last_topic_title_full, 0, 30) . '…' : $last_topic_title_full;
$last_topic_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $last_topic_row['forum_id'] . '&t=' . $last_topic_row['topic_id']);
$template->alter_block_array('forumrow', array(
'LAST_TOPIC_TITLE' => $last_topic_title,
'LAST_TOPIC_TITLE_FULL' => $last_topic_title_full,
'U_LAST_TOPIC_URL' => $last_topic_url
), array('LAST_POST_ID' => $last_topic_row['topic_last_post_id']), 'change');
}
$db->sql_freeresult($last_topic_result);
}Чтобы тема обрезалась после 25 символов,
достаточно ли только в этом фрагменте заменить все 30 на 20?
-
Burning_brook
- phpBB 1.0.0
- Сообщения: 6
- Стаж: 17 лет 5 месяцев
Re:
Не работает. Все равно попадаю на первое сообщение.rxu писал(а):Код: Выделить всё
$last_topic_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $last_topic_row['forum_id'] . '&p=' . $last_topic_row['topic_last_post_id']) . '#p' . $last_topic_row['topic_last_post_id'];
Может быть дело в том, что на форум в любом случае перехожу как Гость, и для меня все сообщения являются непрочитанными?
Что-то в настройках? Помогите, плиззз
-
rxu
- phpBB Guru

- Сообщения: 17272
- Стаж: 20 лет 4 месяца
- Откуда: Красноярск
- Благодарил (а): 632 раза
- Поблагодарили: 2412 раз
Re: Last post topic on index for phpBB3
Так и должно работать. Для перехода к последнему, жмите на соответствующую иконку справа от названия темы.Burning_brook писал(а):Не работает. Все равно попадаю на первое сообщение.

