Выбор возможных значений из подкатегорий

Есть дополнительное поле «Продукты» и категория «Продукты» с подкатегориями «Продукт 1» и «Продукт 2». Какой тип ввода следует выбрать в «Параметрах ввода» дополнительного поля «Продукты» и что написать в «Возможных значениях», чтобы выбор осуществлялся из подкатегорий («Продукт 1», «Продукт 2»)?
Павел
21 апреля 2016, 16:33
modx.pro
2
1 460
0

Комментарии: 2

Николай Загумённов
21 апреля 2016, 20:29
0
Список (Одиночный выбор) — параметр ввода.
Возможные значения должны быть заполнены примерно так — @EVAL return $modx->runSnippet('pdoResources',array('parents'=>5,'depth'=>3,'limit'=>0,'where'=>'{«isfolder:=»:1}','sortby'=>'{«pagetitle»:«ASC»}','tpl'=>'@INLINE [[+pagetitle]]==[[+id]]','outputSeparator'=>'||'));
То есть мы выполняем сниппет pdoResources в возможных значениях.
    Максим Кузнецов
    21 апреля 2016, 21:52
    1
    0
    Чистый запрос, пожалуй, будет более уместным из-за отсутствия лишней передаваемой информации.

    TV — Возможные значения (подойдет для одиночного и множественного списка):
    @EVAL return $modx->runSnippet('name');

    Код сниппета:
    <?php
    	$q = $modx->newQuery('modResource');
    	//пример ограничения выборки
    	$q->where(array(
    		"parent" => "16",
    		"template" => "10"
    	));
    	$q->sortby('pagetitle','ASC');
    
    	$q->select(array(
    		"modResource.id",
    		"modResource.pagetitle",
    	));
    
    	$s = $q->prepare();
    	$s->execute();
    
    	//если тип тв - одиночный список, то можно также дописать "заглушку" без реального значения:
    	//$data[] = "Выберите категорию из списка==";
    	while($row = $s->fetch(PDO::FETCH_ASSOC)){
    		$data[] = "{$row['pagetitle']}=={$row['pagetitle']}";
    	}
    
    	$output = implode("||", $data);
    	return $output;
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      2