demvlg Опубликовано 9 января, 2018 Поделиться Опубликовано 9 января, 2018 Всем привет! Профиль / Контент / Изображения - здесь выводятся все фото, добавленные пользователем. Но все они идут без категорий. Попробовал поковырять шаблоны, два варианта: Вариант 1 gallery / front / browse / imageTable вывод здесь: <ol class='ipsPad ipsList_reset ipsClear ipsGrid ipsGrid_collapsePhone ipsType_center cGalleryPatchwork_list' data-controller='gallery.front.browse.list' data-ipsPhotoLayout data-ipsPhotoLayout-itemTemplate='core.patchwork.imageList' data-ipsPhotoLayout-minHeight='300' id='elTable_{$table->uniqueId}' data-role='tableRows'> {template="tableRowsThumbs" group="browse" app="gallery" params="$table, $headers, $rows"} </ol> попробовал заменить на это: {{foreach $rows as $row}} {{ $groupedImages[$row->category_id][] = $row; }} {{endforeach}} {{foreach $groupedImages as $category_id => $rows }} <ol class='ipsPad ipsList_reset ipsClear ipsGrid ipsGrid_collapsePhone ipsType_center cGalleryPatchwork_list' data-controller='gallery.front.browse.list' data-ipsPhotoLayout data-ipsPhotoLayout-itemTemplate='core.patchwork.imageList' data-ipsPhotoLayout-minHeight='300' id='elTable_{$table->uniqueId}' data-role='tableRows'> {template="tableRowsThumbs" group="browse" app="gallery" params="$table, $headers, $rows"} </ol> {{endforeach}} Все норм, бьется на категории, но только на первой странице. Если жмем в пагинаторе вторую страницу - фото грузятся уже без дробления, все подряд в куче. Вариант 2gallery / front / browse / tableRowsThumbs Сделал подобную манипуляцию, но с переменной $images. Также норм на 1 странице, на второй грузятся все фото, разбитые на категории - но в 25 экземплярах! То есть выводит 625 фото... Причем из ajax приходит все норм, разбито, и всего 25 штук. Это js уже множит это... Хотелось бы помощи, наверняка решение простое в 1 строку, но я вообще не знаком с js фреймворком IPS ( Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
demvlg Опубликовано 10 января, 2018 Автор Поделиться Опубликовано 10 января, 2018 Проблема решена, можно закрыть Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
WOLF Опубликовано 10 января, 2018 Поделиться Опубликовано 10 января, 2018 39 минут назад, demvlg сказал: Проблема решена, можно закрыть Если не трудно то прошу озвучить решение, возможно ы будущем кому-то из пользователей поможет Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
demvlg Опубликовано 10 января, 2018 Автор Поделиться Опубликовано 10 января, 2018 Пример для отображения с плавающими первьюхами gallery / front / browse / imageTable <ol class='ipsPad ipsList_reset ipsClear ipsGrid ipsGrid_collapsePhone ipsType_center cGalleryPatchwork_list' data-controller='gallery.front.browse.list' data-ipsPhotoLayout data-ipsPhotoLayout-itemTemplate='core.patchwork.imageList' data-ipsPhotoLayout-minHeight='300' id='elTable_{$table->uniqueId}' data-role='tableRows'> {template="tableRowsThumbs" group="browse" app="gallery" params="$table, $headers, $rows"} </ol> заменить на <div data-role='tableRows'> {template="tableRowsThumbs" group="browse" app="gallery" params="$table, $headers, $rows"} </div> gallery / front / browse / tableRowsThumbs добавить в начале шаблона {{ $groupedImage = []; }} {{foreach $images as $image}} {{ $groupedImages[$image->category_id][] = $image; }} {{endforeach}} {{foreach $groupedImages as $category_id => $grImages}} {{if \IPS\Request::i()->app == 'core'}} {{ $category_name = \IPS\Member::loggedIn()->language()->get( 'gallery_category_' . $category_id ); }} <h3 class="htitle" data-category-id="{$category_id}">{$category_name}</h3> {{endif}} <ol class='ipsPad ipsList_reset ipsClear ipsGrid ipsGrid_collapsePhone ipsType_center cGalleryPatchwork_list' data-controller='gallery.front.browse.list' data-ipsPhotoLayout data-ipsPhotoLayout-itemTemplate='core.patchwork.imageList' data-ipsPhotoLayout-minHeight='400' id='elTable_{$table->uniqueId}_{$image->category_id}'> заменить {{foreach $images as $image}} на {{foreach $grImages as $image}} добавить в конце шаблона </ol> {{endforeach}} если ктото соберет это в плагин - будет супер, я скилом по их сборке не владею ) Cheshir 1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Cheshir Опубликовано 10 января, 2018 Поделиться Опубликовано 10 января, 2018 Корректно не получится собрать плагин, придется большие куски кода заменять целиком, т.к. дурацкая система IPS не позволяет заменять php вставки, такие как {{foreach $grImages as $image}}, или отдельно добавлять не парные html теги. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
demvlg Опубликовано 10 января, 2018 Автор Поделиться Опубликовано 10 января, 2018 Значит останется просто инструкцией в аналах истории) Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.