Первое сообщение темы. First Post On Every Page

Список и инструкции по установке модов которые вы можете установить себе на форум.
Аватара пользователя
CabinetAdmin

Первое сообщение темы. First Post On Every Page

CabinetAdmin 03 фев 2013, 10:49 Сообщение

При создании новой темы в настройках (под формой ответа) появляется дополнительный пункт - "Показывать на каждой странице".
При включении этой функции, первое сообщение будет показываться на всех страницах темы.

Изменения для клонов SUBSILVER2

Открываем шаблон posting_body.html, находим:

Код: Выделить всё

  <!-- IF S_LOCK_POST_ALLOWED --> <tr> <td><input type="checkbox" class="radio" name="lock_post"{S_LOCK_POST_CHECKED} /></td> <td class="gen">{L_LOCK_POST} [{L_LOCK_POST_EXPLAIN}]</td> </tr> <!-- ENDIF -->


После найденного вставляем:

Код: Выделить всё

  <!-- IF S_FIRST_POST_SHOW_ALLOWED --> <tr> <td><input type="checkbox" class="radio" name="topic_first_post_show"{S_FIRST_POST_SHOW_CHECKED} /></td> <td class="gen">{L_FIRST_POST_SHOW}</td> </tr> <!-- ENDIF -->





Изменения для клонов PROSILVER

Открываем шаблон posting_editor.html, находим:

Код: Выделить всё

  <!-- IF S_LOCK_POST_ALLOWED --> <div><label for="lock_post"><input type="checkbox" name="lock_post" id="lock_post"{S_LOCK_POST_CHECKED} /> {L_LOCK_POST} [{L_LOCK_POST_EXPLAIN}]</label></div> <!-- ENDIF -->


После найденного вставляем:

Код: Выделить всё

  <!-- IF S_FIRST_POST_SHOW_ALLOWED --> <div><label for="topic_first_post_show"><input type="checkbox" name="topic_first_post_show" id="topic_first_post_show"{S_FIRST_POST_SHOW_CHECKED} /> {L_FIRST_POST_SHOW} </label></div> <!-- ENDIF -->
Создать форум бесплатно на http://luckbb.ru/
Хочешь поблагодарить? Есть способы Поддержать проект

Аватара пользователя
romaamor

Re: Первое сообщение темы. First Post On Every Page

romaamor 03 фев 2013, 17:08 Сообщение

CabinetAdmin писал(а):Первое сообщение темы. First Post On Every Page

Так это по моему есть и в стандартной версии phpBB 3.0.11 .Или я ошибаюсь ?
А нету мода чтобы можно было выбирать не первое сообщение темы ,а любое другое ?

Аватара пользователя
CabinetAdmin

Re: Первое сообщение темы. First Post On Every Page

CabinetAdmin 03 фев 2013, 17:12 Сообщение

romaamor писал(а):А нету мода чтобы можно было выбирать не первое сообщение темы ,а любое другое ?

Не видел такого.
Создать форум бесплатно на http://luckbb.ru/
Хочешь поблагодарить? Есть способы Поддержать проект

Аватара пользователя
romaamor

Re: Первое сообщение темы. First Post On Every Page

romaamor 03 фев 2013, 17:17 Сообщение

CabinetAdmin писал(а):Не видел такого.

Понятно.Будем искать. :D

Аватара пользователя
CabinetAdmin

Re: Первое сообщение темы. First Post On Every Page

CabinetAdmin 03 фев 2013, 17:23 Сообщение

На гуру мне такой мод на глаза не попадался.
Только зачем это? Можно ведь отредактировать первое сообщение, вставить туда то, что нужно выводить на каждой странице...
Создать форум бесплатно на http://luckbb.ru/
Хочешь поблагодарить? Есть способы Поддержать проект

Аватара пользователя
romaamor

Re: Первое сообщение темы. First Post On Every Page

romaamor 03 фев 2013, 17:51 Сообщение

CabinetAdmin писал(а):Только зачем это? Можно ведь отредактировать первое сообщение, вставить туда то, что нужно выводить на каждой странице...

:shock: Таки - да. :drink:

Аватара пользователя
CabinetAdmin

Re: Первое сообщение темы. First Post On Every Page

CabinetAdmin 23 май 2013, 19:20 Сообщение

Небольшое дополнение к модификации вывода первого сообщения на каждой странице темы.

Если вы достаточно хорошо разбираетесь в html и специфике phpbb вы можете задать первому сообщению свой стиль, убрать автора сообщения или просто задать своё цветовое оформление. Пример применения такой модификации можно посмотреть на нашем форуме в теме - Медали и награды для форума.

Чтобы запретить какой либо элемент к показу в первом закреплённом сообщении достаточно добавить условие:

Код: Выделить всё

<!-- IF postrow.FIRST_POST_SHOW and postrow.S_FIRST_ROW --> ... <!-- ENDIF -->


postrow.FIRST_POST_SHOW - говорит, что включена функция показа первого сообщения на каждой странице.
postrow.S_FIRST_ROW - то что функция применяется только к первому сообщению.


Например, нам не нужно выводить в первом сообщении кнопки: правка, цитата, информация и т.д.
Открываем шаблон viewtopic_body.html, находим код отвечающий за вывод кнопок:

Код: Выделить всё

<!-- IF not S_IS_BOT --> <!-- IF postrow.U_QUOTE or postrow.U_INFO or postrow.U_DELETE or postrow.U_EDIT --> <ul class="profile-icons"> <!-- IF postrow.U_EDIT --><li class="edit-icon"><a href="{postrow.U_EDIT}" title="{L_EDIT_POST}"><span>{L_EDIT_POST}</span></a></li><!-- ENDIF --> <!-- IF postrow.U_DELETE --><li class="delete-icon"><a href="{postrow.U_DELETE}" title="{L_DELETE_POST}"><span>{L_DELETE_POST}</span></a></li><!-- ENDIF --> <!-- IF postrow.U_REPORT --><li class="report-icon"><a href="{postrow.U_REPORT}" title="{L_REPORT_POST}"><span>{L_REPORT_POST}</span></a></li><!-- ENDIF --> <!-- IF postrow.U_WARN --><li class="warn-icon"><a href="{postrow.U_WARN}" title="{L_WARN_USER}"><span>{L_WARN_USER}</span></a></li><!-- ENDIF --> <!-- IF postrow.U_INFO --><li class="info-icon"><a href="{postrow.U_INFO}" title="{L_INFORMATION}"><span>{L_INFORMATION}</span></a></li><!-- ENDIF --> <!-- IF postrow.U_QUOTE --><li class="quote-icon"><a href="{postrow.U_QUOTE}" title="{L_REPLY_WITH_QUOTE}"><span>{L_REPLY_WITH_QUOTE}</span></a></li><!-- ENDIF --> </ul> <!-- ENDIF --> <!-- ENDIF -->


И оборачиваем его в:

Код: Выделить всё

<!-- IF postrow.FIRST_POST_SHOW and postrow.S_FIRST_ROW --><!-- ELSE --> код <!-- ENDIF -->


Теперь в первом закреплённом сообщении не будут выводиться кнопки. Можно перед условием <!-- ELSE --> задать свой вариант вывода кнопок, без изображений например, текстовыми ссылками.


Для замены фона первого сообщения можно сделать так, найти:

Код: Выделить всё

<div id="p{postrow.POST_ID}" class="post <!-- IF postrow.S_ROW_COUNT is odd --> <!-- ELSE --> <!-- ENDIF --><!-- IF postrow.S_UNREAD_POST --> unreadpost<!-- ENDIF --><!-- IF postrow.S_POST_REPORTED --> reported<!-- ENDIF --><!-- IF postrow.S_ONLINE and not postrow.S_IGNORE_POST --> online<!-- ENDIF -->">


И заменить найденное на:

Код: Выделить всё

<div id="p{postrow.POST_ID}" class="post <!-- IF postrow.S_ROW_COUNT is odd --> <!-- ELSE --> <!-- ENDIF --><!-- IF postrow.S_UNREAD_POST --> unreadpost<!-- ENDIF --><!-- IF postrow.S_POST_REPORTED --> reported<!-- ENDIF --><!-- IF postrow.S_ONLINE and not postrow.S_IGNORE_POST --> online<!-- ENDIF -->" <!-- IF postrow.FIRST_POST_SHOW and postrow.S_FIRST_ROW -->style="background-color: #FFF;"<!-- ENDIF -->>


Т.е. мы добавили условие:

Код: Выделить всё

<!-- IF postrow.FIRST_POST_SHOW and postrow.S_FIRST_ROW -->style="background-color: #FFF;"<!-- ENDIF -->



Для стилей клонов subsilver2:

Код: Выделить всё

<table width="100%" cellspacing="5"> <tr> <td> <!-- IF postrow.S_POST_UNAPPROVED or postrow.S_POST_REPORTED -->


В найденном <table width="100%" cellspacing="5"> меняем на:

Код: Выделить всё

<table width="100%" cellspacing="5" <!-- IF postrow.FIRST_POST_SHOW and postrow.S_FIRST_ROW -->style="background-color: #FFF;"<!-- ENDIF -->>




Для тех кто хорошо владеет знаниями в phpbb, html и css могут дописать свой шаблон придав сообщению совершенно другую структуру.
Как это можно сделать?
Находим в шаблоне viewtopic_body.html:

Код: Выделить всё

<!-- BEGIN postrow -->


И после найденного добавляем наше условие со своим кодом:

Код: Выделить всё

<!-- IF postrow.FIRST_POST_SHOW and postrow.S_FIRST_ROW --> код <!-- ELSE -->


Находим:

Код: Выделить всё

<!-- END postrow -->


И перед найденным вставляем:

Код: Выделить всё

<!-- ENDIF -->
Создать форум бесплатно на http://luckbb.ru/
Хочешь поблагодарить? Есть способы Поддержать проект



Похожие темы

Вернуться в «Модификация phpBB на luckbb.ru»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость