форум vBSupport.ru > vBulletin > vBulletin 3.8.x > Made in vBSupport.org 3.8
  • »
VBsupport перешел с домена .ORG на родной .RU Ура! Пожалуйста, обновите свои закладки - VBsupport.ru
 
 
 
 
maJic
В Черном списке
 
maJic's Avatar
Default Special Forums[Ленточный вариант]
0

Суть хака: собирает все темы в одном разделе.
Демо: http://www.umaxforum.com/forumdisplay.php?f=54
Импортируем продукт из аттача, создаём новый раздел, по-желанию(а лучше так и сделать) отключить создание новых тем в разделе, затем в опциях раздела:

Если вы желаете чтобы важные темы не были прилеплены и сортировались как остальные темы по-свежести, то придётся править файл forumdisplay.php:
============
Находим:
Quote:
if ($thread['sticky'])
{
$threadbit =& $threadbits_sticky;
}
и меняем:
Quote:
if ($thread['sticky'])
на
Quote:
if ($thread['sticky'] AND !$foruminfo['containsallforumsthreads'] AND !$foruminfo['containsthreadsfrom'])
добавить перед:

Quote:
$threads = $db->query_read_slave("
SELECT $votequery $previewfield
это:
Quote:
if ($foruminfo['containsallforumsthreads'] OR $foruminfo['containsthreadsfrom'])
{
$sticky_sort = "";
} else {
$sticky_sort = "sticky DESC, ";
}
Затем находим:
Quote:
WHERE thread.threadid IN (0$ids) $hook_query_where
ORDER BY sticky DESC, $sqlsortfield $sqlsortorder
");
и меняем:
Quote:
sticky DESC,
на
Quote:
$sticky_sort
Хак проверялся на: 3.7.3,4,5 и 3.8,1.
Enjoy
;)
Attached Files
File Type: xml product-special_forums.xml (5.3 KB, 20 views)

Last edited by maJic : 02-20-2009 at 03:39 PM.
Bot
Yandex Bot Yandex Bot is online now
 
Join Date: 05.05.2005
Реклама на форуме А что у нас тут интересного? =)
 
 
lopar4ever
Знаток
 
lopar4ever's Avatar
Default
0

Либо йа кретин, либо ты забыл сам аттач ))
 
 
maJic
В Черном списке
 
maJic's Avatar
Default
1

Сорри) Добавил

maJic добавил 20.02.2009 в 14:39
Для отображения с какого раздела тема:
Находим в FORUMDISPLAY:
<if condition="$show['inlinemod']">
<if condition="$show['popups']">
<td class="vbmenu_control" id="imod" align="center" title="$vbphrase[moderation]"> <script type="text/javascript"> vbmenu_register('imod'); </script> </td>
<else />
<td class="thead" align="center">
<input type="checkbox" name="allbox" id="checkall_all" title="$vbphrase[check_uncheck_all]" onclick="inlineMod.check_all()" />
</td>
</if>
</if>
Перед ним дописываем:
<if condition="$show['forumname']">
<td class="thead" align="center" nowrap="nowrap"><span style="white-space:nowrap">$vbphrase[forum]</a></span></td>
</if>


Находим в threadbit:
<if condition="$show['inlinemod']">
<td class="<if condition="$show['forumlink']">alt2<else />alt1</if>">
<input type="checkbox" name="tlist[$thread[realthreadid]]" id="tlist_$thread[realthreadid]" value="$thread[checkbox_value]" <if condition="$show['disabled']">disabled="disabled"</if> />
</td>
</if>
Перед ним дописываем:
<if condition="$show['forumname']">
<td class="alt1" nowrap="nowrap" align="center"><a href="forumdisplay.php?$session[sessionurl]f=$thread[forumid]">$thread[forumtitle]</a></td>
</if>

Last edited by maJic : 02-20-2009 at 03:39 PM. Reason: Добавлено сообщение
 
 
lopar4ever
Знаток
 
lopar4ever's Avatar
Default
0

хочу уточнить. Я так понял мод кидает все темы в один раздел. а как обстоят дела с модераторами?
 
 
maJic
В Черном списке
 
maJic's Avatar
Default
0

Quote:
Originally Posted by lopar4ever View Post
хочу уточнить. Я так понял мод кидает все темы в один раздел. а как обстоят дела с модераторами?
Если только добавишь модератора на этот раздел, а если в этом разделе темы из раздела модерируемого модером (пздц сказал), то не действуют права.
 
 
sanika
Продвинутый
 
sanika's Avatar
Default
0

Есть один нюанс - количество сообщения выводиться без разделения запятой .
вот пример http://rebill.me (ленточный вариант форума). Т.е. выводить 1850, а не 1,850. В настройках языка стоит разделение запятой, и в других местах где числа больше тысячи - идет разделение.
 
 
sanika
Продвинутый
 
sanika's Avatar
Default
0

В общем кому надо будет - выход найден.
Заходим Продукты и модули - Управление модулями.
В правой части находим Продукт : Особые форумы и выбираем Количество сообщений/тем (forumbit) forumbit_display
Находим в коде
PHP Code:
$forum['threadcount'] = $totalthreads;
    
$forum['replycount'] = $totalposts;

и меняем на
PHP Code:
$forum['threadcount'] = number_format($totalthreads0','',');
    
$forum['replycount'] = number_format($totalposts0','',');

Теперь количество тем в ленточном варианте будет нормально отображаться в виде 1,234 а не 1234 как раньше
 
 
sanika
Продвинутый
 
sanika's Avatar
Default
0

Странно, но после изменений forumdisplay.php, как описано в первом посте, важные темы прикрепились не в верху списка, а внизу первой страницы. как это поправить? булка 3.8.7
 
 
sanika
Продвинутый
 
sanika's Avatar
Default
0

Подскажите, кто знает где в forumdisplay.php идет прикрепление к первой странице или ко всем страницам

sanika добавил 02.01.2012 в 13:36
По поводу прикрепленных тем - еще одно место где надо поправить в forumdisplay.php

Находим
Quote:
$hook_query_fields = $hook_query_joins = $hook_query_where = '';
($hook = vBulletinHook::fetch_hook('forumdisplay_query_threadid')) ? eval($hook) : false;
и после него вставляем

Quote:
if($foruminfo['containsallforumsthreads'] OR $foruminfo['containsthreadsfrom'])
{
$sticky_sort2 = "";
}else{
$sticky_sort2 = "sticky DESC, ";
}
потом находим место

Quote:
$hook_query_where
ORDER BY sticky DESC, $sqlsortfield $sqlsortorder" . (!empty($sqlsortfield2) ? ", $sqlsortfield2 $sqlsortorder" : '') . "
LIMIT $limitlower, $perpage
");
и меняем на

Quote:
$hook_query_where
ORDER BY $sticky_sort2 $sqlsortfield $sqlsortorder" . (!empty($sqlsortfield2) ? ", $sqlsortfield2 $sqlsortorder" : '') . "
LIMIT $limitlower, $perpage
");
теперь важность темы вообще не учитывается

Last edited by sanika : 01-02-2012 at 02:36 PM. Reason: Добавлено сообщение
 
 
oxxxy
Простоузер
Default
0

Достаточно везде просто выловить "sticky DESC," и удалить.
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT +4. The time now is 07:51 PM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Loading...