Перейти к содержимому
Русский язык для Invision Community 5

Изображения из галереи на главной

После обновления форума до версии 3.4.6 и галереи до 5.0.5, не удается найти легкого решения для вывода Случайных изображений из галерее (по умолчанию стоят последние)

 

Метод описанный тут, не работает: http://forums.ibresource.ru/topic/60041/?hl=%2B%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BD%D0%B8%D0%B5+%2B%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F+%2B%D0%B3%D0%B0%D0%BB%D0%B5%D1%80%D0%B5%D0%B8

 

Подскажите пожалуйста как это реализовывается в новых версиях.

Рекомендованные сообщения

Метод описанный тут, не работает:

Должен работать.

Только файл нужно править другой /admin/applications_addon/ips/gallery/sources/classes/hooks.php

Вроде есть готовый хук на IPS

  • Автор

Должен работать.

Только файл нужно править другой /admin/applications_addon/ips/gallery/sources/classes/hooks.php

Насколько я понял из прочтенного на IPB это все работало только до Галерее v.4

Сейчас рандомно вывести изображения из Галереи штатными методами нельзя. (((

http://community.invisionpower.com/topic/368176-better-featured-images-options-feedback

Изменено пользователем H_A_N

  • Автор

http://community.inv...ges-in-sidebar/

 

Там вроде (выбор) боковой блок и под шапкой.

Как боковой блок да хук может, а вот как заменить оригинальный блок под шапкой пока не понял.

Отключаете старый, включаете этот и все.

  • Автор

Отключаете старый, включаете этот и все.

Отключил старый, включил новый, но новый выводится в боковом блоке.

В настройках лично я не вижу никакого намека на вывод вместо штатного.

  • Автор

В общем Хук посоветованный ранее "Gallery Images in Sidebar" заставить работать как надо (вместо штатного, на штатном месте) заставить не удалось, но зато код Хука подсказал как заставить ШТАТНЫЙ Хук выводить случайные (рандомные) изображения.

 

У меня это получилось сделать таким образом:

 

в файле /admin/applications_addon/ips/gallery/sources/classes/hooks.php

 

Перед строчкой

return count( $recents ) ? $this->registry->output->getTemplate( 'gallery_global' )->hookRecentGalleryImages( $recents ) : '';

 

вставляем код

 

$_images = $recents;

$keys = array_keys($_images);

shuffle($keys);

 

foreach ( $keys as $key )

{

$__images[$key] = $_images[$key];

}

 

$recents = $__images;

Можно перемещать массив на уровне пхп, можно отсортировать в случайном порядке на уровне mysql как это было в старом хаке

 

'sortKey' => 'rand()'

или на уровне php (вставляем код)

 

	if( ! empty( $recents ) )
	{
		$keys    = array_keys( $recents );
		shuffle($keys);
		$recents = array_combine( $keys, $recents );
	}

Создайте аккаунт или войдите в него для комментирования

Важная информация

При использовании данного сайта, вы согласаетесь с Условия использования и Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим..

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.