Страница 1 из 2
Как отсортировать страницы в page list по атрибутам
Добавлено:
08 окт 2012, 05:50
лфдучу
Мозговой штурм))
У меня на сайте много страниц одного типа (условно right_sidebar), но мне их надо вывести на одну страницу в несколько блоков, отсортированных по 4-5 атрибутам.
То есть на странице будут 4 модуля page list с шаблоном blog_index и в них нужно отсортировать станицs по Атрибут А, Атрибут Б, Атрибут 1, Атрибут 2.
С помощью атрибута is_featured не получается, так как он имеет два значения (вкл и выкл).
Есть еще какой-то вариант, может знаете?
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
08 окт 2012, 11:59
Count_Raven
Ну, простыми манипуляциями с мышкой тут не получится.
1. Нужно создать необходимые атрибуты для страниц в панели управления.
2.1. На базе blog_index создать свой шаблон, где прописать код для сортировки по нашим атрибутам (плохой вариант, так как пихать логику во view не кошерно).
2.2. Наследовать от page_list, либо скопировать page_list в /blocks и переименовать, изменить controller, добавить код для фильтрации (хороший вариант).
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
08 окт 2012, 12:02
cmsservice
Навскидку: приобретите модуль PageList Plus (
) и наслаждайтесь возможностями.
Есть другой вариант, написать 4 темплейта для модуля PageList, внутри которых делать фильтрацию pagelist'а по нужному критерию. Если на PHP не очень, то может быть затруднительно реализовать этот вариант.
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
08 окт 2012, 15:21
лфдучу
В общем понятно)) Оказалось все не просто. Нашел бесплатный модуль (платный пока не охота покупать, это я тестирую компоновку, может и не понадобится она). Но бесплатный не работает так как заявлено, если не заработает буду думать (этот
)
Спасибо за ответы.
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
13 окт 2012, 06:04
лфдучу
Может есть еще какой-то простой способ выводить в page list только определенные страницы? Может как-то вручную можно указать?
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
13 окт 2012, 16:23
cmsservice
Ну вообще-то есть. Только придется попрограммировать. Вы как с PHP? Придется запрограммировать template для модуля page_list.
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
13 окт 2012, 18:09
Count_Raven
cmsservice писал(а):Ну вообще-то есть. Только придется попрограммировать. Вы как с PHP? Придется запрограммировать template для модуля page_list.
Не учите плохому, зачем логику в вид пихать? Программировать надо контроллер, функцию getPages().
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
13 окт 2012, 18:17
Count_Raven
Ладно, сча разберемся. Вышлю на почту модифицированный page_list.
UPD: Отправил.
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
13 окт 2012, 20:39
cmsservice
Count_Raven писал(а):Не учите плохому, зачем логику в вид пихать? Программировать надо контроллер, функцию getPages().
Не, ну это так, но человек просит простое решение. А простое, оно не обязательно по всем правилам, это просто решение проблемы, не более того
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
13 окт 2012, 22:45
Count_Raven
cmsservice писал(а):Count_Raven писал(а):Не учите плохому, зачем логику в вид пихать? Программировать надо контроллер, функцию getPages().
Не, ну это так, но человек просит простое решение. А простое, оно не обязательно по всем правилам, это просто решение проблемы, не более того
Угу
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
26 окт 2012, 04:35
лфдучу
Так, модуль получил, сегодня поставлю, попробую, а то пришлось руками выводить в текстовый блок)
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
18 ноя 2012, 15:04
iDom
лфдучу писал(а):В общем понятно)) Оказалось все не просто. Нашел бесплатный модуль (платный пока не охота покупать, это я тестирую компоновку, может и не понадобится она). Но бесплатный не работает так как заявлено, если не заработает буду думать (этот
)
Спасибо за ответы.
В этой CMS вообще ничерта не работает как заявлено... документация отвратительная, первокурсники в универе и то лучше пишут документацию....
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
18 ноя 2012, 19:44
cmsservice
Странно, у нас работает все как заявлено.
С документацией да, есть траблы, но в целом - исходники, самая лучшая документация.
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
19 ноя 2012, 01:44
iDom
Никто не знает где в классе ItemList происходит заполнение массива $items? А то резать они его режут, а где заполняют что-то найти не могу.
Re: Как отсортировать страницы в page list по атрибутам
Добавлено:
19 ноя 2012, 13:48
Count_Raven
iDom писал(а):Никто не знает где в классе ItemList происходит заполнение массива $items? А то резать они его режут, а где заполняют что-то найти не могу.
setItems()
Т. е. ItemList это универсальный объект и пользоваться им напрямую в общем-то не обязательно.
Нужно от него наследовать и создать свой какой-нибудь list, типа FileList, PageList... HrenList =)
Вы можете конечно создать экземпляр ItemList и дать ему элементы при помощи setItems($items).
Но для работы со списками конкретных объектов, лучше наследовать от ItemList и уже расширить необходимым функционалом.
На базе ItemList там есть более продвинутый класс DatabaseItemList - вот на него лучше посмотрите, если вы (а я так думаю) работаете с информацией из БД.