info navigation

phpbb-belk.ru

темы, связанные с форумом phpbb 3.0.x



Новая тема  [ 1 сообщение ]  Просмотры: 3185

Автор Сообщение
Не в сети
(Андрей)  
Администратор
Аватара пользователя

Стаж: 8 лет 6 месяцев 28 дней
Сообщения: 1223
Откуда: здешние мы


Стиль: subsilver2


Репутация: 11


Russia

Тиц и PR

перейти на сайт пользователя
Найти темы пользователя


Переделка функции "значки тем". стиль subsilver2

небольшая модификация, позволяющая вместо значков тем (выбор при создании темы) выбрать фон для самой темы:

Вложение:
Комментарий к файлу: выбор фона
scans_posting.png
scans_posting.png [ 5.84 КБ | Просмотров: 3185 ] scans_posting.png



что, в результате, даст возможность выделения темы не значком, а фоном:

Вложение:
Комментарий к файлу: возможный виды
scans_topic.png
scans_topic.png [ 30.31 КБ | Просмотров: 3185 ] scans_topic.png



разумеется, "значки тем", как таковые, больше не работают.

смотрится интересно. может кого и заинтересует.

Итак:

функция вывода иконок (значков) для тем, это:

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

<!-- IF S_TOPIC_ICONS --><!-- IF topicrow.TOPIC_ICON_IMG --><img src="{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}" width="{topicrow.TOPIC_ICON_IMG_WIDTH}" height="{topicrow.TOPIC_ICON_IMG_HEIGHT}" alt="" title="" /><!-- ENDIF --><!-- ENDIF -->


имея адрес значка - можно прописать его как фон.

разумеется, это очередной конструктор. просто один из путей "как можно"...


Открыть viewforum_body.html

примечание: правки применены только к темам форума. субфорумы не затрагивает.

Найти

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

   <!-- IF not S_DISPLAY_ACTIVE and (S_IS_POSTABLE or .topicrow) -->
      <table class="tablebg" width="100%" cellspacing="1">
      <tr>
         <td class="cat" colspan="<!-- IF S_TOPIC_ICONS -->7<!-- ELSE -->6<!-- ENDIF -->">


Заменить на

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

   <!-- IF not S_DISPLAY_ACTIVE and (S_IS_POSTABLE or .topicrow) -->
      <table class="tablebg" width="100%" cellspacing="1">
      <tr>
         <td class="cat" colspan="6">


то есть просто убираем условие расширения/сужения таблицы от условия ввода в таблицу иконки темы (так как её просто не будет в том виде, что был).


Найти

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

         <!-- IF S_TOPIC_ICONS -->
            <th colspan="3">&nbsp;{L_TOPICS}&nbsp;</th>
         <!-- ELSE -->
            <th colspan="2">&nbsp;{L_TOPICS}&nbsp;</th>
         <!-- ENDIF -->


Заменить найденное на

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

            <th colspan="2">&nbsp;{L_TOPICS}&nbsp;</th>


Найти

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

         <!-- IF topicrow.S_TOPIC_TYPE_SWITCH eq 1 -->
            <tr>
               <td class="row3" colspan="<!-- IF S_TOPIC_ICONS -->7<!-- ELSE -->6<!-- ENDIF -->"><b class="gensmall">{L_ANNOUNCEMENTS}</b></td>
            </tr>
         <!-- ELSEIF topicrow.S_TOPIC_TYPE_SWITCH eq 0 -->
            <tr>
               <td class="row3" colspan="<!-- IF S_TOPIC_ICONS -->7<!-- ELSE -->6<!-- ENDIF -->"><b class="gensmall">{L_TOPICS}</b></td>
            </tr>
         <!-- ENDIF -->


Заменить найденное на

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

         <!-- IF topicrow.S_TOPIC_TYPE_SWITCH eq 1 -->
            <tr>
               <td class="row3" colspan="6"><b class="gensmall">{L_ANNOUNCEMENTS}</b></td>
            </tr>
         <!-- ELSEIF topicrow.S_TOPIC_TYPE_SWITCH eq 0 -->
            <tr>
               <td class="row3" colspan="6"><b class="gensmall">{L_TOPICS}</b></td>
            </tr>
         <!-- ENDIF -->


Найти

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

            <!-- IF S_TOPIC_ICONS -->
               <td class="row1" width="25" align="center"><!-- IF topicrow.TOPIC_ICON_IMG --><img src="{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}" width="{topicrow.TOPIC_ICON_IMG_WIDTH}" height="{topicrow.TOPIC_ICON_IMG_HEIGHT}" alt="" title="" /><!-- ENDIF --></td>
            <!-- ENDIF -->


Удалить найденное.
Это вывод значка и колонки, в которой он находится.



Теперь добавим вывод фона, как условие в столбцы таблицы. При отключении значка будет выводится стиль по умолчанию:


Найти

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

<td class="row1" width="25" align="center">{topicrow.TOPIC_FOLDER_IMG}</td>


Заменить найденное на

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

            <td <!-- IF S_TOPIC_ICONS --><!-- IF topicrow.TOPIC_ICON_IMG -->style="background-image: url('{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}');padding:4px;"<!-- ELSE -->class="row1"<!-- ENDIF --><!-- ENDIF --> width="25" align="center">{topicrow.TOPIC_FOLDER_IMG}</td>


То есть вместо оформления class="row1" мы прописываем вывод фона

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

style="background-image: url('{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}');padding:4px;"


Дальше поступать также. не буду прописывать все строки, заменяйте class="row1" или class="row2" по аналогии:

Найти

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

            <td class="row1">


Заменить найденное на

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

<td <!-- IF S_TOPIC_ICONS --><!-- IF topicrow.TOPIC_ICON_IMG -->style="background-image: url('{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}');padding:4px;"<!-- ELSE -->class="row1"<!-- ENDIF --><!-- ENDIF -->>


Найти (часть строки)

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

            <td class="row2" width="130"


Заменить найденное на

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

<td <!-- IF S_TOPIC_ICONS --><!-- IF topicrow.TOPIC_ICON_IMG -->style="background-image: url('{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}');padding:4px;"<!-- ELSE -->class="row2"<!-- ENDIF --><!-- ENDIF --> width="130"


Найти (часть строки)

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

            <td class="row1" width="50"


Заменить найденное на

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

<td <!-- IF S_TOPIC_ICONS --><!-- IF topicrow.TOPIC_ICON_IMG -->style="background-image: url('{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}');padding:4px;"<!-- ELSE -->class="row1"<!-- ENDIF --><!-- ENDIF --> width="50"


Найти (часть строки)

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

            <td class="row2" width="50"


Заменить найденное на

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

<td <!-- IF S_TOPIC_ICONS --><!-- IF topicrow.TOPIC_ICON_IMG -->style="background-image: url('{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}');padding:4px;"<!-- ELSE -->class="row2"<!-- ENDIF --><!-- ENDIF --> width="50"


Найти (часть строки)

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

            <td class="row1" width="140"


Заменить найденное на

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

<td <!-- IF S_TOPIC_ICONS --><!-- IF topicrow.TOPIC_ICON_IMG -->style="background-image: url('{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}');padding:4px;"<!-- ELSE -->class="row1"<!-- ENDIF --><!-- ENDIF --> width="140"


С пропиской фона всё. теперь продолжаем убирать "ненужный код":

Найти

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

            <!-- IF S_TOPIC_ICONS -->
               <td class="row1" colspan="7" height="30" align="center" valign="middle"><span class="gen"><!-- IF not S_SORT_DAYS -->{L_NO_TOPICS}<!-- ELSE -->{L_NO_TOPICS_TIME_FRAME}<!-- ENDIF --></span></td>
            <!-- ELSE -->
               <td class="row1" colspan="6" height="30" align="center" valign="middle"><span class="gen"><!-- IF not S_SORT_DAYS -->{L_NO_TOPICS}<!-- ELSE -->{L_NO_TOPICS_TIME_FRAME}<!-- ENDIF --></span></td>
            <!-- ENDIF -->


Заменить найденное на

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

               <td class="row1" colspan="6" height="30" align="center" valign="middle"><span class="gen"><!-- IF not S_SORT_DAYS -->{L_NO_TOPICS}<!-- ELSE -->{L_NO_TOPICS_TIME_FRAME}<!-- ENDIF --></span></td>


Найти

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

         <!-- IF S_TOPIC_ICONS -->
            <td class="cat" colspan="7">
         <!-- ELSE -->
            <td class="cat" colspan="6">
         <!-- ENDIF -->


Заменить найденное на

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

            <td class="cat" colspan="6">



Вроде с кодом в файле viewforum_body.html закончил.

Для удобство понимания выкладываю переделанный код целиком:

переделанный код

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

   <!-- IF not S_DISPLAY_ACTIVE and (S_IS_POSTABLE or .topicrow) -->
      <table class="tablebg" width="100%" cellspacing="1">
      <tr>
         <td class="cat" colspan="6">
            <table width="100%" cellspacing="0">
            <tr class="nav">
               <td valign="middle">&nbsp;<!-- IF S_WATCH_FORUM_LINK and not S_IS_BOT --><a href="{S_WATCH_FORUM_LINK}">{S_WATCH_FORUM_TITLE}</a><!-- ENDIF --></td>
               <td align="{S_CONTENT_FLOW_END}" valign="middle"><!-- IF not S_IS_BOT and U_MARK_TOPICS and .topicrow --><a href="{U_MARK_TOPICS}">{L_MARK_TOPICS_READ}</a><!-- ENDIF -->&nbsp;</td>
            </tr>
            </table>
         </td>
      </tr>

      <tr>
         <th colspan="2">&nbsp;{L_TOPICS}&nbsp;</th>
         <th>&nbsp;{L_AUTHOR}&nbsp;</th>
         <th>&nbsp;{L_REPLIES}&nbsp;</th>
         <th>&nbsp;{L_VIEWS}&nbsp;</th>
         <th>&nbsp;{L_LAST_POST}&nbsp;</th>
      </tr>

      <!-- BEGIN topicrow -->

         <!-- IF topicrow.S_TOPIC_TYPE_SWITCH eq 1 -->
            <tr>
               <td class="row3" colspan="6"><b class="gensmall">{L_ANNOUNCEMENTS}</b></td>
            </tr>
         <!-- ELSEIF topicrow.S_TOPIC_TYPE_SWITCH eq 0 -->
            <tr>
               <td class="row3" colspan="6"><b class="gensmall">{L_TOPICS}</b></td>
            </tr>
         <!-- ENDIF -->

         <tr>
            <td <!-- IF S_TOPIC_ICONS --><!-- IF topicrow.TOPIC_ICON_IMG -->style="background-image: url('{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}');padding:4px;"<!-- ELSE -->class="row1"<!-- ENDIF --><!-- ENDIF --> width="25" align="center">{topicrow.TOPIC_FOLDER_IMG}</td>
            <td <!-- IF S_TOPIC_ICONS --><!-- IF topicrow.TOPIC_ICON_IMG -->style="background-image: url('{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}');padding:4px;"<!-- ELSE -->class="row1"<!-- ENDIF --><!-- ENDIF -->>
               <!-- IF topicrow.S_UNREAD_TOPIC --><a href="{topicrow.U_NEWEST_POST}">{NEWEST_POST_IMG}</a><!-- ENDIF -->
               {topicrow.ATTACH_ICON_IMG} <!-- IF topicrow.S_HAS_POLL or topicrow.S_TOPIC_MOVED --><b>{topicrow.TOPIC_TYPE}</b> <!-- ENDIF --><a title="{L_POSTED}: {topicrow.FIRST_POST_TIME}" href="{topicrow.U_VIEW_TOPIC}" class="topictitle">{topicrow.TOPIC_TITLE}</a>
               <!-- IF topicrow.S_TOPIC_UNAPPROVED or topicrow.S_POSTS_UNAPPROVED -->
                  <a href="{topicrow.U_MCP_QUEUE}">{topicrow.UNAPPROVED_IMG}</a>&nbsp;
               <!-- ENDIF -->
               <!-- IF topicrow.S_TOPIC_REPORTED -->
                  <a href="{topicrow.U_MCP_REPORT}">{REPORTED_IMG}</a>&nbsp;
               <!-- ENDIF -->
               <!-- IF topicrow.PAGINATION -->
                  <p class="gensmall"> [ {GOTO_PAGE_IMG}{L_GOTO_PAGE}: {topicrow.PAGINATION} ] </p>
               <!-- ENDIF -->
            </td>
            <td <!-- IF S_TOPIC_ICONS --><!-- IF topicrow.TOPIC_ICON_IMG -->style="background-image: url('{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}');padding:4px;"<!-- ELSE -->class="row2"<!-- ENDIF --><!-- ENDIF --> width="130" align="center"><p class="topicauthor">{topicrow.TOPIC_AUTHOR_FULL}</p></td>
            <td <!-- IF S_TOPIC_ICONS --><!-- IF topicrow.TOPIC_ICON_IMG -->style="background-image: url('{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}');padding:4px;"<!-- ELSE -->class="row1"<!-- ENDIF --><!-- ENDIF --> width="50" align="center"><p class="topicdetails">{topicrow.REPLIES}</p></td>
            <td <!-- IF S_TOPIC_ICONS --><!-- IF topicrow.TOPIC_ICON_IMG -->style="background-image: url('{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}');padding:4px;"<!-- ELSE -->class="row2"<!-- ENDIF --><!-- ENDIF --> width="50" align="center"><p class="topicdetails">{topicrow.VIEWS}</p></td>
            <td <!-- IF S_TOPIC_ICONS --><!-- IF topicrow.TOPIC_ICON_IMG -->style="background-image: url('{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}');padding:4px;"<!-- ELSE -->class="row1"<!-- ENDIF --><!-- ENDIF --> width="140" align="center">
               <p class="topicdetails" style="white-space: nowrap;">{topicrow.LAST_POST_TIME}</p>
               <p class="topicdetails">{topicrow.LAST_POST_AUTHOR_FULL}
                  <!-- IF not S_IS_BOT --><a href="{topicrow.U_LAST_POST}">{LAST_POST_IMG}</a><!-- ENDIF -->
               </p>
            </td>
         </tr>

      <!-- BEGINELSE -->
         <!-- IF S_IS_POSTABLE -->
         <tr>
               <td class="row1" colspan="6" height="30" align="center" valign="middle"><span class="gen"><!-- IF not S_SORT_DAYS -->{L_NO_TOPICS}<!-- ELSE -->{L_NO_TOPICS_TIME_FRAME}<!-- ENDIF --></span></td>
         </tr>
         <!-- ENDIF -->
      <!-- END topicrow -->

      <!-- IF not S_IS_BOT -->
      <tr align="center">
            <td class="cat" colspan="6">
               <form method="post" action="{S_FORUM_ACTION}"><span class="gensmall">{L_DISPLAY_TOPICS}:</span>&nbsp;{S_SELECT_SORT_DAYS}&nbsp;<span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR}&nbsp;<input class="btnlite" type="submit" name="sort" value="{L_GO}" /></form>
            </td>
      </tr>
      <!-- ENDIF -->
      </table>
   <!-- ENDIF -->


Вроде нигде не ошибся... :?

Переделка вида при создании темы и выбора фона:

Открыть posting_body.html

Найти

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

<!-- IF S_SHOW_TOPIC_ICONS or S_SHOW_PM_ICONS -->
   <tr>
      <td class="row1"><b class="genmed">{L_ICON}:</b></td>
      <td class="row2">
         <table width="100%" cellspacing="0" cellpadding="0" border="0">
         <tr>
            <td><input type="radio" class="radio" name="icon" value="0"{S_NO_ICON_CHECKED} tabindex="1" /><span class="genmed"><!-- IF S_SHOW_TOPIC_ICONS -->{L_NO_TOPIC_ICON}<!-- ELSE -->{L_NO_PM_ICON}<!-- ENDIF --></span> <!-- BEGIN topic_icon --><span style="white-space: nowrap;"><input type="radio" class="radio" name="icon" value="{topic_icon.ICON_ID}"{topic_icon.S_ICON_CHECKED} tabindex="1" /><img src="{topic_icon.ICON_IMG}" width="{topic_icon.ICON_WIDTH}" height="{topic_icon.ICON_HEIGHT}" alt="" title="" hspace="2" vspace="2" /></span> <!-- END topic_icon --></td>
         </tr>
         </table>
      </td>
   </tr>
<!-- ENDIF -->



Заменить найденное на

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

<!-- IF S_SHOW_TOPIC_ICONS or S_SHOW_PM_ICONS -->
   <tr>
      <td class="row1"><b class="genmed">Фон темы:<br>(в списке тем)</b></td>
      <td class="row2">
         <table width="100%" cellspacing="0" cellpadding="0" border="0">
         <tr>
            <td><input type="radio" class="radio" name="icon" value="0"{S_NO_ICON_CHECKED} tabindex="1" /><span class="genmed" style="margin:0 5px 0 5px;"><!-- IF S_SHOW_TOPIC_ICONS -->{L_NO_TOPIC_ICON}<!-- ELSE -->{L_NO_PM_ICON}<!-- ENDIF --></span> <!-- BEGIN topic_icon --><span style="white-space: nowrap;"><input type="radio" class="radio" name="icon" value="{topic_icon.ICON_ID}"{topic_icon.S_ICON_CHECKED} tabindex="1" /><img src="{topic_icon.ICON_IMG}" width="{topic_icon.ICON_WIDTH}" height="{topic_icon.ICON_HEIGHT}" alt="" title="" hspace="2" vspace="2" style="margin:0 0 2px 5px;border:1px solid #B4B9BF;" /></span> <!-- END topic_icon --></td>
         </tr>
                        <tr>
                                <td>Цвет фона: 1 - жёлтый, 2 - розовый, 3 - голубой, 4 - зёлёный</td>
                        </tr>
         </table>
      </td>
   </tr>
<!-- ENDIF -->


Теперь необходимо добавить фоны в паки форума и удалить предыдущие значки.
Это можно сделать в административном разделе: Сообщения - Значки тем - добавить/удалить.

перед этим загрузить фоны в папку images/icons/misc/ форума:

Вложение:
Комментарий к файлу: фрны
pic.rar [674 байт]
Скачиваний: 39


скачать, распаковать и отдельные изображения загрузить в папку.

информация по фонам:

floralwhite -жёлтый

lavenderblush - розовый

azure - голубой

honeydew - зелёный


файлы названы так, как в html сами цвета.

Уфф... вроде бы всё. кажется, что сложно, но на самом деле нет...

Для стиля prosilver делать не стал, так как во-первых он - плавающий, а во-вторых там строки при наведении и так меняются.

Может кому и пригодится... :)


трёхголовый белк семейства рептилоидов:
"три головы - хорошо, на как же трудно придти к согласию..."
значок темы,фон темы в списке тем,subsilver2,phpbb 3.0.x
Показать сообщения за:  Поле сортировки  
Ответить на тему  [ 1 сообщение ] 

Кто сейчас на сайте:

Всего посетителей: 0, из них зарегистрированных: 0, скрытых: 0 и гостей: 0 (основано на активности пользователей за последние 5 минут)
Больше всего посетителей (122) здесь было 19 дек 2023, 12:10

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

Часовой пояс: UTC + 2 часа



Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения
Вы не можете защищать свои темы паролем

Найти:
Перейти:  




cron

Текущее время: 19 апр 2024, 22:40

Создано на основе phpBB® Forum Software © phpBB Group
Яндекс.Метрика

Полная версия Мобильный вид