 |
 |
Форум сетевых администраторов » Веб Форумы » VBulletin 3.x.x » новые сообщения
| Автор |
| Тема |
 |
|
 |
|
|
|
MuZzClub.ru


Зарегистрирован: Jul 2002
Место проживания: Ireland
Публикаций: 2710
Статус:  |
Можно ли отключить показ новых сообщений из определенных разделов при их поиске, когда жмешь "новые сообщения" в главном меню?
__________________
yMC.ru - хомяк музыканта
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
25-02-2004 01:50 |
|
|
Модератор
|
| Самое простое, это найти такой запрос в файле... |
[сооб. #61618]
25-02-2004 10:58 |
|
Модератор


Зарегистрирован: Sep 2002
Место проживания:
Публикаций: 470
Статус:  |
Самое простое, это найти такой запрос в файле search.php
PHP:
$threads = $DB_site->query("
SELECT threadid
FROM " . TABLE_PREFIX . "thread AS thread
LEFT JOIN " . TABLE_PREFIX . "deletionlog AS delthread ON(delthread.primaryid = thread.threadid AND
delthread.type = 'thread')
WHERE forumid IN(" . implode(', ', $forumids) . ") AND forumid <> '2'
AND thread.lastpost >= $datecut
AND visible = 1
AND delthread.primaryid IS NULL
ORDER BY lastpost DESC
LIMIT $vboptions[maxresults]
");
и за
PHP:
WHERE forumid IN(" . implode(', ', $forumids) . ")
добавить на каждый раздел такие строки:
PHP:
AND forumid <> '3'
где 3 - id раздела, который ты хочешь исключить из поиска.
Получится нечто вроде
PHP:
WHERE forumid IN(" . implode(', ', $forumids) . ") AND forumid <> '3'
Но это конечно не очень удобный вариант, если потребуется часто менять разрешения на разделы...
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
25-02-2004 10:58 |
|
|
MuZzClub.ru
|
ну для меня и этот подойдет! 
Спасибо большое!
а... |
[сооб. #61659]
25-02-2004 22:39 |
|
MuZzClub.ru


Зарегистрирован: Jul 2002
Место проживания: Ireland
Публикаций: 2710
Статус:  |
ну для меня и этот подойдет! 
Спасибо большое!
а если сложнее загадка? 
Например, мне нужно, чтобы если я захожу из под www.domen.ru/forum/index.php то показывало как ты написал выше, а если www.domen.ru/forum/index.php?f=xxx - то показывало из тех, которые я запретил для первого...
Чтоб было понятнее - у меня один форум, но я использую http://www.muzzclub.ru/forum/ для своего музыкального форума, а
http://www.muzzclub.ru/forum/?f=84 - это форум для моего личного сайта и тематика разделов там совсем не музыкальная... Так вот, я хотел бы, чтобы те, кто ходит через первые ворота не видел новых сообщений из разделов второго форума и наоборот... Зачем так сложно? Ну просто люди попросили, чтоб им не регестрироваться по 2 раза на разных досках + переход с одного форма на другой... Вот я так и извращаюсь (хотя надо было делать отдельный форум, но уговорили меня...). Заранее спасибо! 
__________________
yMC.ru - хомяк музыканта
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
25-02-2004 22:39 |
|
|
Модератор
|
| Делается даже ещё проще. Ищем опять тот самый... |
[сооб. #61676]
26-02-2004 03:03 |
|
Модератор


Зарегистрирован: Sep 2002
Место проживания:
Публикаций: 470
Статус:  |
Делается даже ещё проще. Ищем опять тот самый запрос в search.php:
PHP:
$threads = $DB_site->query("
SELECT threadid
FROM " . TABLE_PREFIX . "thread AS thread
LEFT JOIN " . TABLE_PREFIX . "deletionlog AS delthread ON(delthread.primaryid = thread.threadid AND
delthread.type = 'thread')
WHERE forumid IN(" . implode(', ', $forumids) . ") AND forumid <> '2'
AND thread.lastpost >= $datecut
AND visible = 1
AND delthread.primaryid IS NULL
ORDER BY lastpost DESC
LIMIT $vboptions[maxresults]
");
И перед ним добавляем:
PHP:
if(isSet($_REQUEST['noids']))
{
$noids = explode('-',$_REQUEST['noids']);
if(sizeof($noids) > 0)
{
foreach($noids as $noid)
{
$noidkey = array_search(intval($noid),$forumids);
unset($forumids[$noidkey]);
}
}
}
Чтобы исключить ID`ы форумов, ссылка на "новые сообщения" должна выглядеть так:
search.php?do=getnew&noids=1-2-3
ID`ы разделов прописываются в параметре "noids" и должны разделяться дефисами. В данном случае будут исключены разделы: 1, 2 и 3.
Сообщение было отредактировано MarKer 26-02-2004 в 03:07
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
26-02-2004 03:03 |
|
|
MuZzClub.ru
|
оки-доки, а AND forumid <> '2' тада можно убрать?
[size=1][i]MCTarakan... |
[сооб. #61677]
26-02-2004 03:08 |
|
MuZzClub.ru


Зарегистрирован: Jul 2002
Место проживания: Ireland
Публикаций: 2710
Статус:  |
оки-доки, а AND forumid <> '2' тада можно убрать?
MCTarakan добавил 26-02-2004 в 03:15:00:
угу... а то с ней тада ошибку выдает, а так работает отлично! 
MCTarakan добавил 26-02-2004 в 03:21:13:
былоб еще ваще круто, еслиб это дело можно было в админке прописать, а ссылка бы выглядела например так: &noidsset=1 (а то у меня ща одна выглядит примерно так: &noids=76-79-80-81-82-83-84-87-88-89-90-91-92-93-94-95-96-97 ) ну или в самом скрипте наконец.... 
__________________
yMC.ru - хомяк музыканта
Сообщение было отредактировано MCTarakan 26-02-2004 в 03:22
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
26-02-2004 03:08 |
|
|
|
Формат времени GMT. Текущее время 07:46.
|
Правила форума:
Вы не можете создавать новые темы.
Вы не можете отвечать на существующие темы.
Вы не можете прикреплять файлы.
Вы не можете редактировать свои сообщения. |
HTML теги выкл.
Спец. код вкл.
Смайлики вкл.
[IMG] тег выкл.
|
|
|
|
| |
Page generated in 0.47446990 seconds (97.88% PHP - 2.12% MySQL) with 23 queries.
|
 |