Отображения именинников на главной в зависимости от их сообщений - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

Правила раздела

Здесь обсуждаются вопросы по настройке и администрированию форумов IPB 3.x.
Пожалуйста, не оффтопьте, если зашли сюда случайно, и обратите внимание на соседние разделы.
Установка, настройка и обслуживание форумов IPB 2.x.
Оформление форумов, включая верстку скинов.
Размещение рекламы на форумах.
SEO оптимизация форума.
Техническая поддержка наших скинов и модов.

СвернутьПрикрепленные теги

Теги не найдены

Страница 1 из 1

Отображения именинников на главной в зависимости от их сообщений

#1 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 064
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 02 Январь 2019 - 17:25

Подскажите как реализовать что бы на главной в блоке именинников отображались лишь те пользователи, у которых скажем на форуме больше 10 сообщений?
А то этот блок забивается пользователями у которых 0 сообщений на форуме.
0

#2 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 9 446
  • Регистрация: 20-Март 09
  • Репутация: 2 546
  • IPB version:3.1.x
 

Отправлено 02 Январь 2019 - 17:54

Это какой-то хук?
0

#3 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 064
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 02 Январь 2019 - 19:14

Просмотреть сообщениеsiv1987 сказал(а):

Это какой-то хук?

Нет, стандартная функция. Вот - Вложение  2019-01-02_191512.jpg (5,01К)
Количество загрузок: 3
Что бы в этом списке отображались пользователи у которых больше 10 сообщений на форуме.
0

#4 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 9 446
  • Регистрация: 20-Март 09
  • Репутация: 2 546
  • IPB version:3.1.x
 

Отправлено 02 Январь 2019 - 21:39

Данные именинников кешируются, а количество постов это переменное значение что не очень совместимо с кешом. Тут либо делать дополнительный sql запрос, либо кешировать количество сообщений - но это значение может потерять актуальность до следующего обновление кеша.
0

#5 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 064
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 03 Январь 2019 - 00:31

Просмотреть сообщениеsiv1987 сказал(а):

Тут либо делать дополнительный sql запрос

Был бы признателен вам за его составление. Так как блок именинников видят только зарегистрированые, то особой нагрузки на форум это не даст.
0

#6 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 064
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 03 Январь 2019 - 15:43

Просмотреть сообщениеsiv1987 сказал(а):

Данные именинников кешируются, а количество постов это переменное значение что не очень совместимо с кешом. Тут либо делать дополнительный sql запрос, либо кешировать количество сообщений - но там это значение может потерять актуальность до следующего обновление кеша.


Не подскажите этот запросик?
0

#7 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 9 446
  • Регистрация: 20-Март 09
  • Репутация: 2 546
  • IPB version:3.1.x
 

Отправлено 03 Январь 2019 - 22:05

Тут не только запросик нужен, но и немного его закодить.

Открыть admin\applications\forums\modules_public\forums\boards.php

Найти

				foreach ( $users as $user )

Выше добавить

				if( count( $users ) )
				{
					$mid = array();
					foreach( $users as $k => $u )
					{
						$mid[ $u['member_id'] ] = $k;
					}
					
					$this->DB->build( array( 'select' => 'member_id, posts', 'from' => 'members', 'where' => 'member_id IN('.implode( ',', array_keys( $mid ) ).')' ) );
					$this->DB->execute();
					
					while( $row = $this->DB->fetch() )
					{
						if( $row['posts'] == 0 )
						{
							unset( $users[ $mid[$row['member_id']] ] );
						}
					}
				}

1

#8 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 064
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 04 Январь 2019 - 00:55

Просмотреть сообщениеsiv1987 сказал(а):

Тут не только запросик нужен, но и немного его закодить.

Спасибо, то что надо!
0

Сообщить об этой теме:


Страница 1 из 1


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2019 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна