Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#1 2013-06-22 05:02:26

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Плагин xfilter - Фильтр постов по xfields

Существует некий плагин xfilter, который умеет фильтровать новости по указанным xfields (прикрепил к посту). Однако в последних SVN он уже не работает, судя по всему - из-за изменений в плагине xfields.
Суть запроса в реанимации и доработке плагина, с последующим развитием и прикреплению к релизам CMS.

Реанимация и базовые требования к плагину:
0. Плагин должен работать big_smile
1. Плагин должен работать в main.tpl
2. Плагин должен работать с типами доп.полей "Выбор значения" input>select
3. Плагин должен считывать существующие все возможные доп.поля у новостей и предлагать их пользователю в виде выпадающих списков
4. Плагин должен уметь считывать существующие категории и подкатегории новостей, перед доп.полями предлагать выпадающий список категорий и подкатегорий (указывать категории или нет - опционно)
5. Плагин должен уметь считывать группы доп.полей, используемые в тех или иных категориях (если такие предустановлены)
6. Выбор того или иного доп.поля и категории\подкатегории не является обязательным. По умолчанию во всек списках стоит "неважно". Достаточно выбрать одно значения (или вовсе ниодного?)
7. Список подкатегорий зависим от выбранной категории: пока категория не выбрана или если у выбранной категории подкатегорий нет - список подкатегорий неактивен, иначе - предлагаются только те подкатегории, которые существуют в указанной категории
8. Список доп.полей зависим от выбранной категории\подкатегории: пока категория\подкатегория не выбраны - доп.поля указываются все. Иначе - только группы доп.полей, характерные для выбранной категории\подкатегории (если такие предустановлены)
9. По нажатию submit искать новости по указанным категориям и фильтрам.

Схематически и последовательно выглядит так:

Категория:   Подкатегория:  Область:       Город:
- Неважно    - Неважно         - Неважно   - Неважно     --> Искать

Категория:   Подкатегория:  Область:       Город:
- Неважно    - Неважно         - Неважно   - Неважно     --> Искать
- Квартиры
- Дома
- Дачи

Категория:   Подкатегория:  Область:       Город:
+ Квартиры  - Неважно         - Неважно   - Неважно     --> Искать
                    - 1комн.
                    - 2комн.
                    - 3комн.

Категория:   Подкатегория:  Область:       Город:
+ Квартиры  + 2комн.           - Неважно   - Неважно     --> Искать
                                           - Киевская
                                           - Донецкая
                                           - Крым

Категория:   Подкатегория:  Область:       Город:
+ Квартиры  + 2комн.           + Киевская   - Неважно     --> Искать
                                                                - Борисполь
                                                                - Бровары
                                                                - Киев

Категория:   Подкатегория:  Область:       Город:
+ Квартиры  + 2комн.           + Киевская   + Киев     --> Искать

Здесь изображён пример фильтра в категории "Квартиры". В других категориях будут подставляться другие значения.
Конечно же, возможен поиск и по одному или нескольким из указанных параметров.

Дополнительные требования и возможности плагина:
*10. Возможность работы с plugin multi_main (если это нужно дополнительно дорабатывать)
*11. Работа фильтра в категории\подкатегории: плагин должен понимать, в какой категории\подкатегории пользователь находится и вносить изменения в вып.списки (указать категорию\подкатегорию в выпадающем списке и деактивировать его, подставить в вып.списках возможные для данной категории\подкатегории значения доп.полей, если группы доп.полей предустановлены для данной категории\подкатегории):

(зачёркнутый = неактивный)

Категория:   Подкатегория:  Область:       Город:
+ Квартиры  + 2комн.           - Неважно   - Неважно     --> Искать
                                           - Киевская
                                           - Донецкая
                                           - Крым

*12. Возможность добавления неактивного зависимого дочернего фильтра: значения в дочернем фильтре зависят от выбора значения в родительском фильтре, дочерний фильтр неактивен, активируется только при выборе значения в фильтре-родителе. Например, нам не нужно показывать пользователю в выпадающем списке бесчисленные жилые районы всех городов Украины, но мы покажем районы того города, который он выберет в предыдущем списке:

(зачёркнутый = неактивный)

Категория:   Подкатегория:  Область:       Город:            Район:
+ Квартиры  + 2комн.           + Киевская   - Неважно     - Неважно      --> Искать

Категория:   Подкатегория:  Область:       Город:            Район:
+ Квартиры  + 2комн.           + Киевская   + Киев           - Неважно     --> Искать
                                                                                     - Борщаговка
                                                                                     - Голосеевкий
                                                                                     - Дарница
                                                                                     - Дорогожичи

*13. Возможность выбора и поиск по нескольким значениям в одном фильтре (input type="checkbox")
*14. Подумать о возможности независимой работы плагина xfilter, без плагина xfields:
  - 14.1. Вынос в настройку плагина всех возможных фильтров для каждой категории\подкатегории новостей; указание категорий в которых фильтр будет использоваться (детали - по восстребованию)
  - 14.2. Добавление плагина в engine> add.tpl и edit.tpl, где, собственно, фильтры и будут указываться, с учётом заданной категории\подкатегории
  - 14.3. Вывод кликабельного фильтра в news.short
  - 14.4. Вывод фильтра в news.full
*15. Экспорт фильтров в xnews
*16. Ассимиляция плагина c расширенным поиском

Почему этот плагин важен для NGCMS: Основной целью практически любого сайта является предоставление пользователю конечной информации о новости\товаре\продукте и пр. или группе новостей\товаров\продуктов в той или иной категории для последующего ознакомления, сравнения, выбора... Ну и, соответственно, целью пользователя есть поиск этой конечной информации. Однако часто бывает достаточно трудно донести эту конечную информацию пользователю при наличии большого количества, скажем, товаров, а следовательно - категорий, подкатегорий и множества характеристик у единиц товара. А ведь мы хотим "уговорить" клиента, предложить всё, что у нас есть по его запросу. NGCMS пока не обладает достаточным функционалом для быстрого поиска нужного (а значит - для быстрого отсеивания ненужного) пользователю контента. Введение в функционал CMS такого плагина мгновенно расширит её удобство и универсальность, и конечно же удобство и простоту в использовании интернет-ресурсов на NGCMS, в особенности сайтов, которые представляет собой большие каталоги информации, ссылок, товаров или интернет-магазины.

Вопрос цены: Я не проггер, верстальщик, но учусь. Пока осилить плагин сам, увы, не в силах. Интересует, во сколько обойдётся перевести вышеуказанные базовые требования к плагину с русского на пхпшный. Заодно предупреждаю, что денежными ресурсами не особо обладаю smile , и приглашаю спонсоров присоединиться.

Изменено nimiko (2013-06-22 05:19:13)

Не в сети

#2 2013-06-23 19:21:34

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

Ну что ж, очень жаль, что это никому не интересно.
Приходится искать альтернативы.

Не в сети

#3 2013-06-23 20:14:26

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: Плагин xfilter - Фильтр постов по xfields

возможно  и будет после релиза

Не в сети

#4 2013-06-23 22:34:53

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

Было бы хорошо smile
Правда, релиз запланирован на август, а подобный функционал уже нужен. Есть заказ на каталог учебных заведений.

Не в сети

#5 2013-06-23 23:01:04

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Плагин xfilter - Фильтр постов по xfields

Вообщем не думаю, что что-то стоит ожидать. Тут даже релиз под угрозой а вы ещё о каких-то плагинах говорите...

Не в сети

#6 2013-06-25 00:35:38

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

Грусть да печаль.

Не в сети

#7 2013-06-26 16:04:18

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Плагин xfilter - Фильтр постов по xfields

nimiko, плагин будет, но точно не ранее выпуска релиза.

Не в сети

#8 2013-10-26 21:36:30

Zemlemer
Участник
Откуда Украина
Зарегистрирован: 2012-07-27
Сообщений: 271
Рейтинг :   25 
Сайт

Re: Плагин xfilter - Фильтр постов по xfields

Разобрался smile Допилил плагин под свои нужды. Выкладываю то, что получилось - версия 0.02

nimiko пишет:

0. Плагин должен работать big_smile
1. Плагин должен работать в main.tpl
2. Плагин должен работать с типами доп.полей "Выбор значения" input, select
3. Плагин должен считывать существующие доп. поля у новостей и предлагать их пользователю в виде выпадающих списков
4. Плагин должен уметь считывать существующие категории новостей, перед доп.полями предлагать выпадающий список категорий  (указывать категории или нет - опционно)
6. Выбор того или иного доп.поля и категории\подкатегории не является обязательным. По умолчанию во всек списках стоит "неважно". Достаточно выбрать одно значение.
9. По нажатию submit искать новости по указанным категориям и фильтрам.

Вышеуказанное работает в SVN 1212.

Жду советов. Буду по возможности еще допиливать.

Изменено Zemlemer (2013-10-26 21:43:17)

Не в сети

#9 2013-10-28 15:14:54

easmik
VIP забанил этого пользователя.
Зарегистрирован: 2011-02-01
Сообщений: 1,030
Рейтинг :   37 

Re: Плагин xfilter - Фильтр постов по xfields

Zemlemer, молодец!

Не в сети

#10 2013-11-24 19:04:14

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

Zemlemer, Огромное спасибо за работу! Сегодня-завтра потестю smile

Не в сети

#11 2013-11-26 13:27:24

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

Всё отлично работает, огромное спасибо smile Однако для работы фильтра доп.полям нужно указывать персональное поле в БД. Об этом не сказано в описании.
Было бы отлично прикрутить теперь и зависимость доп. полей в фильтре от выбранной (в предыдущем фильтре) категории.
К примеру, чтобы в категории "Сигареты" можно было выбрать только -с фильтром -без фильтра или -с мундштуком. А в категории "Письменные столы" только -дубовый -кленовый -ореховый...
Вряд ли кого-то заинтересуют дубовые сигареты или письменные столы с мундштуком. Да и вряд ли продавец сможет предложить такой товар. В общем, думаю, концепция понятна...
Zemlemer, Спасибо за труды! )

Не в сети

#12 2014-12-28 12:27:46

Zemlemer
Участник
Откуда Украина
Зарегистрирован: 2012-07-27
Сообщений: 271
Рейтинг :   25 
Сайт

Re: Плагин xfilter - Фильтр постов по xfields

Спустя год плагин понадобился наконец для нового проекта, поэтому встречайте - версия 0.03

Что сделано:

+ создан файл конфигурации для плагина
+ добавлена возможность указания списка категорий, которые не нужно отображать в фильтре
+ добавлена возможность запрета / разрешения выбора из всех категорий
+ добавлена возможность настройки порядка вывода новостей и количества выводимых новостей
+ добавлена возможность выбора шаблона для отображения (шаблон сайта / шаблон плагина)
% для дополнительных полей типа input не учитываются пустые значения

В общем, уже похоже на что-то пристойное smile

Что надо сделать еще:

1. Код переписан с использованием параметра overrideSQLquery, который в функции news_showlist отключает постраничку. Поэтому пока вывод новостей плагином работает без неё.
Если кто-то подскажет, как это исправить (корректно реализовать работу с постраничкой), буду благодарен.

2. Вывод доп. полей внутри категорий (то, что просил nimiko) - пока непонятно, как реализовать. Может, позже руки дойдут.

3. Небольшой косяк: если нажать кнопку, ничего не выбирая, то список скрываемых категорий не генерится (то есть отобразятся новости из всех категорий). У себя пока устранил, просто сняв галочку "Отображать на главной" в новостях из скрываемой категории.

Прошу тестировать. Замечания и советы приветствуются!

upd: исправлено: не отображались новости с указанной дополнительной категорией. Файл перезалит.

Изменено Zemlemer (2014-12-28 16:11:19)

Не в сети

#13 2014-12-28 13:07:06

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

А ссылочку на плагин-то можно? )

Не в сети

#14 2014-12-28 13:14:33

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: Плагин xfilter - Фильтр постов по xfields

nimiko пишет:

А ссылочку на плагин-то можно? )

чуть выше твоего поста
Прикрепленные файлы:
xfilter03.zip, Размер: 6,622 байт, Скачано: 1
http://ngcms.ru/forum/attachment.php?item=1029

Изменено irbees2008 (2014-12-28 13:15:01)

Не в сети

#15 2014-12-28 13:16:46

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

Нет доступа big_smile Интересно

Не в сети

#16 2014-12-28 13:52:28

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

Не-не, ребят. Я просто приложенных файлов не вижу. А прямая ссылка к аттачменту от irbees2008 не даёт файл. Видимо, какой-то не очень хороший человек мне права доступа «подкрутил».
Можете залить куда-нить на внешний ресурс? Я бы скачал и потестил. Спасибо за работу над плагином!

Уже не надо. Создал ещё один аккаунт на форуме. Там всё норм

Изменено nimiko (2014-12-28 13:58:26)

Не в сети

#17 2014-12-28 14:37:29

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: Плагин xfilter - Фильтр постов по xfields

Не в сети

#18 2014-12-28 14:55:20

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

irbees2008, спасибо, уже скачал с другого аккаунта.
Zemlemer, всё, что заявлено, вроде бы функционирует. Работают доп. поля.
Но есть одна проблема с категориями: если посту указать две категории - родительскую и ребёнка  (квартиры + однокомнатные), то фильтр отображает пост для родительской (квартиры), но не видит пост из категории-ребёнка (однокомнатные).

Не в сети

#19 2014-12-28 15:52:17

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

Точнее, не родительские категории и дети, а главная и дополнительные. Фильтр не видит посты именно из дополнительных категорий.

Не в сети

#20 2014-12-28 16:07:08

Zemlemer
Участник
Откуда Украина
Зарегистрирован: 2012-07-27
Сообщений: 271
Рейтинг :   25 
Сайт

Re: Плагин xfilter - Фильтр постов по xfields

Фильтр не видит посты именно из дополнительных категорий.

спасибо, поправил. Архив в приложении к посту, проверяйте.

Не в сети

#21 2014-12-28 16:27:37

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

Zemlemer, работает, спасибо!
Ещё заметил один момент - при блокировке ID родительской категории дочерние всё равно отображаются. Получается что-то вроде:

- все -
— подкатегория 1
— подкатегория 2
— подкатегория 3
Категория 2
Категория 3

Конечно, можно закрыть по ID и все подкатегории этой категории. Но если их очень много?

Изменено nimiko (2014-12-28 16:28:25)

Не в сети

#22 2014-12-28 16:32:27

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

Более того, если из следующего списка исключить Категорию 2:

- все -
Категория 1
Категория 2
— подкатегория 1
— подкатегория 2
— подкатегория 3
Категория 3

мы получим

- все -
Категория 1
— подкатегория 1
— подкатегория 2
— подкатегория 3
Категория 3

А это будет вводить в заблуждение. Подкатегории-то не относятся к Категории 1.

Не в сети

#23 2014-12-28 17:01:38

Zemlemer
Участник
Откуда Украина
Зарегистрирован: 2012-07-27
Сообщений: 271
Рейтинг :   25 
Сайт

Re: Плагин xfilter - Фильтр постов по xfields

при блокировке ID родительской категории дочерние всё равно отображаются

тоже поправил.

Файл прикреплен, проверяйте.

Изменено Zemlemer (2014-12-28 17:25:50)

Не в сети

#24 2014-12-28 19:18:44

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

Всё гуд! Один момент, поле «Категории, которые НЕ нужно отображать (ID через запятую)» не должно быть пустым. По умолчанию - 0 (ноль). Иначе

MySQL ERROR [select]: SELECT id AS catid FROM ng_category WHERE parent in ()
(1064): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1

Не в сети

#25 2014-12-28 19:20:45

nimiko
Участник
Откуда Мелитополь
Зарегистрирован: 2013-02-18
Сообщений: 108
Рейтинг :   

Re: Плагин xfilter - Фильтр постов по xfields

Ан нет, если по умолчанию стоит ноль - Главные категории в фильтре не отображаются ) Попробую переустановить и поставить начисто.

Не в сети

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

Работает на FluxBB