Специальные атрибуты:
- selected – выбор по умолчанию порядковый номер или id категории
- array – задает источник данных внешний массив
- taxonomy – задает источник данных одну из таксономий категорию или метки
- not_selected – off запрещает добавлять пустой пункт в список
- child_of – родительская категория-контейнер откуда взять список категорий
- include – включить категории, только указанные категории
- exclude – список категорий которые надо исключить
- дополнительные атрибуты добавляет функция – wp_dropdown_categories()
- terms – задает условие
- emsg – текст ошибки
Источник данных – внутреннее содержание:
[ads_select name=ads_age selected=4 terms=$ emsg=»Укажите свой возраст!» ] =>не выбрано! 10=>до 10 20=>от 10 до 20 30=>от 20 до 30 40=>от 30 до 40 50=>от 40 до 50 60=>старше 50 [/ads_select]
12345678910 | [ads_select name=ads_age selected=4terms=$ emsg=«Укажите свой возраст!» ] =>не выбрано! 10=>до 10 20=>от 10 до 20 30=>от 20 до 30 40=>от 30 до 40 50=>от 40 до 50 60=>старше 50[/ads_select] |
Каждый новый пункт начинаем с новой строки. Далее пишем по парам значение=>описание через =>, значение – это то, что в конечном итоге будет сохранено в метаполе ads_age. Обращаю внимание первый элемент имеет пустое значение!
selected=4 означает что начальный выбор (по умолчанию) установлен на 4 элемент.
terms=$ проверить, что что-то выбрано, если ничего не выбрано, то есть в данном случае это пункт 1 вывести сообщение emsg=”Укажите свой возраст!”
Ну вообще при таком раскладе selected=4 лучше не указывать, тогда по умолчанию выбран будет первый пункт – пустой
и если пользователь забудет сделать выбор terms=$ сгенерирует ошибку и все таки заставит пользователя обратить внимание на элемент. Такая вот политика :)(
Источник данных – таксономии : категории, метки.
Допустим мы себе придумали категорию-контейнер Action (id:24; ярлык:action) в ней сложены под категории: купить, продать, обменять, сдать в аренду, снять в аренду и тд, Теперь для каждого объявления организуем выбор действия:
… [ads_select name=ads_action taxonomy=category child_of=24 terms=$ emsg=»Выберите действие!» /] …
123456789 | ...[ads_select name=ads_action taxonomy=category child_of=24 terms=$ emsg=«Выберите действие!»/]... |
Рекомндую вместо id указывать ярлык категории child_of=24 child_of=action, при переносе БД с хостинга на хостинг ярлыки категорий сохраняются в отличи от id.
taxonomy=category или post_tag – указывать обязательно!
Конечный html код мы получаем через стандартную WordPress функцию wp_dropdown_categories(), и все атрибуты заданные в шорткоде передаются в эту функцию. Она сама отберет, что для нее, а что нет.
Преобразование ярлыков в id выполняется в плагине. Преобразование работает только для прарметров:
child_of – родительская категория контейнер
include – включить категории по списку например kyply,prodam,obmen …, кстати почему-то в оф документации он отсутствует.
exclude – исключить категории
selected – id выбранной категории
Дополнительно плагин добавляет всегда добавляет пустой пункт первым номером, если хотите отключить это добавляем в шорткод атрибут not_selected=off.
! Атрибут selected здесь указываем не номер пункта по счету, а id или ярлык категории которую установить активной по умолчанию.
Источник данных – внешний массив
Этот вариант уже для профессионалов – кто знает, что такое массив, где и как его создать, поэтому объясняю коротко:
в functions.php текущей темы создаем массив
$php_var_name[] = ‘пустой’; $php_var_name[2] = ‘два зайца’; $php_var_name[3] = ‘три зайца’; $php_var_name[‘mnogo’] = ‘много зайцев’;
1234 | $php_var_name[] = ‘пустой’;$php_var_name[2] = ‘два зайца’;$php_var_name[3] = ‘три зайца’;$php_var_name[‘mnogo’] = ‘много зайцев’; |
и на странице с формой вставляем код:
…. [ads_select name = ads_varname array = php_var_name /] ….
123 | ....[ads_select name = ads_varname array = php_var_name /].... |
атрибут array тут указываем имя массива
selected – выбранный по умолчанию пункт указываем порядковый номер
Считаем зайцев.