Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

Получить данные из списка и выполнить отбор

06.01.2016, 00:40
Дмитрий
Дмитрий
Дмитрий

Зарегистрирован:
2015-07-31
Сообщений: 53

Здравствуйте!
Прошу помощи вот в каком вопросе: требуется выбрать из выпадающего списка категорию статей, например, "Юмор", и вывести все статьи нужной категории.

Вопросы:

1) как обработать событие выбора значения в списке? На js нет проблем, если решение в этом, то как передать полученное значение в глубины Нетката для дальнейшего использования?
Если это невозможно, то готов рассмотреть вариант с двумя шагами, первый - выбор категории, второй - клик на кнопку "Отфильтровать".

2) В каком месте принять это значение, и где прописать потом условие, что, мол, все записи с КатегорияИд = ПереданныйИд?

Ну вот, наверно, и все. Есть идея создавать под каждую категорию раздел, и создавать статью сразу в нужном подразделе, и потом использовать отбор по владельцу. Насколько это грамотно с точки зрения данной CMS?
06.01.2016, 03:54
Вячеслав
Студия "Кронос"
Вячеслав

Зарегистрирован:
2013-04-12
Сообщений: 91

Если вы про выборку по полям компонента, то вот документация .
Нужно отметить поля для поиска, в шаблонах действий->поиск сгенерировать код и вставить его в макет дизайна, префикс или суффикс шаблона компонента
06.01.2016, 07:07
Дмитрий
Дмитрий
Дмитрий

Зарегистрирован:
2015-07-31
Сообщений: 53

Эээ.. Нет. Пожалуй, стоило начать с рисунка)

картинка

Все просто: при выборе категории из списка надо отфильтровать статьи по выбранной категории. То есть на рисунке должны остаться две статьи категории "Юмор", как в списке
06.01.2016, 23:47
Игорь
Игорь Мишарин
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 482

Ответы.
1. В глубины значение это передавать и не нужно, его нужно передать в URL (GET-параметр). Можно и "Отфильтровать", можно и скрипт повесить на change списка. А потом уже на основе полученного значения, который GET, делать выборку статей. Но, для этого нужно поле в карточке статьи - Категория.

2. Условия прописываются в системных настройках компонента.

3. Да, статьи можно сразу добавлять в "свои" разделы, потом для select'а запросом получать имя и ID этих разделов и использовать для выборки.

Stark
07.01.2016, 12:25
Дмитрий
Дмитрий
Дмитрий

Зарегистрирован:
2015-07-31
Сообщений: 53

Спасибо за ответ!

Попрошу еще немного информации: навесить js скрипт на change списка не проблема. Допустим, я формирую некую ссылку вида

http://my_site.com/blog?categoryId=1

и инициирую переход по ней.

В каком именно месте и как мне поймать этот categoryId? Как я представляю, возможно, в настройках компонента где-то есть что-то вроде
GET['categoryID'], и далее ручками прописать условие в запросе.

То, что в карточке должна быть категория это само собой)
07.01.2016, 12:59
Вячеслав
Студия "Кронос"
Вячеслав

Зарегистрирован:
2013-04-12
Сообщений: 91

В любом месте можете уже вывести полученную переменную
<?=$categoryId?>, у вас она равна 1.
В сис. настройках компонента можно поставить условие выборки, к примеру с полученной из get запроса переменной
Код:
$query_where = "`categoryId` = '{$categoryId}'";
07.01.2016, 20:22
Игорь
Игорь Мишарин
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 482

Да, все такие телодвижения с выборкой и т.п. совершаются в Системных настройках компонента.

Stark
08.01.2016, 03:34
Дмитрий
Дмитрий
Дмитрий

Зарегистрирован:
2015-07-31
Сообщений: 53

Спасибо обоим участникам!
Как раз эту информацию я и искал
198 196 2016-01-08 03:34:44 14399
Описание проекта