[ads_input] – произвольное текстовое поле, переключатель, флажок

[ads_input] – основной шорткод широкого профиля, преобразуется в html элемент input.
Специальные атрибуты:

  1. terms – задает условие
  2. emsg – текст ошибки, если не прошла проверка выводится ошибка

Внимание ! все атрибуты за исключением специфических terms, emsg будут транслироваться в конечный тег input поэтому, если надо прописать css класc, атрибут размера size или событие onclick, любой другой html атрибут – прямо так и пишем в шорткоде:
[ads_input name=”ads_myvar” class=”myclass_input” size=”50″ type=”text” onclick=”myfunction_JS()” /]

В зависимости от атрибута type может создавать множество элементов формы тестовое поле, переключатель, кнопки, скрытые поля, ввод файла и другое. Однако для нас актуальны 3 варианта:

  • текстовое поле type=”text”
  • переключатель type=”radio”
  • флажок type=”checkbox”

По умолчанию type = text.
Создаем простое текстовое поле:

[ads_input name=»ads_myvar» type=»text» /] или можно так [ads_input name=ads_myvar]

12 [ads_input name=«ads_myvar» type=«text» /]  или можно так [ads_input name=ads_myvar]

(предпочтительно полная запись, на всякий случай ;))

Создаем флажок выбора:

Подтвердить с условиями публикации согласен: [ads_input type=»checkbox» name=»ads_ok» value=»ok» terms=$ emsg=»Вы должны принять условия!» /]

12 Подтвердить с условиями публикации согласен: [ads_input type=«checkbox» name=«ads_ok» value=«ok» terms=$  emsg=«Вы должны принять условия!» /]

для создания элемента выбора из множества флажков (поля флажков)
есть специальной код [ads_checkbox_area]

А вот с зависимыми переключателями получается не совсем красиво – одиночный radio нет смысла использовать, как правило их как минимум 2 и более, поэтому лучше воспользоваться специальны шорткодом для создания группы зависимых переключателей [ads_radio_area].
Но все же для примера рассмотрим переключатель на 3 положения:

…. [ads_input type=»radio» name=»ads_browser» value=»opera» terms=»$» emsg=»Выберите браузер!»]Opera [ads_input type=»radio» name=»ads_browser» value=»firefox»]Firefox [ads_input type=»radio» name=»ads_browser» value=»ie»]Internet Explorer …

12345 ....[ads_input type=«radio» name=«ads_browser» value=«opera» terms=«$» emsg=«Выберите браузер!»]Opera [ads_input type=«radio» name=«ads_browser» value=«firefox»]Firefox[ads_input type=«radio» name=«ads_browser» value=«ie»]Internet Explorer...

Тут все загвоздка в том, для того чтобы создать зависимы переключатель на 3 положения у всех radio должно быть одинаковое имя ads_browser, поэтому ошибка, если пользователь забыл сделать выбор будет подсвечена у каждого элемента (у каждой кнопочки) не очень красиво но в целом все работает правильно.

А теперь фокус

Для создания простых элементов ввода вовсе не обязательно использовать шортокды!
Можно прописывать просто html код для input, главное, чтобы элементы находились внутри основного шорткода [AdsForm]…[/AdsForm] и в редакторе WordPress не забыть переключиться в режим html.
Таким образом любое произвольное поле можно добавить так:

[AdsForm] … Ваш сайт:<br /> <input type=»text» name=’ads_url’ /><br /> … [/AdsForm]

123456 [AdsForm]...Ваш сайт:<br /><input type=«text» name=‘ads_url’ /><br />...[/AdsForm]

Будет работать автозаполнение поля при редактировании, и у записи появится мета поле ads_url.

! Однако, вы не сможете использовать условия проверки ввода и вывода ошибки terms и emsg это только для шорткодов.

Рекомендую использовать такой вариант когда поле не является обязательным – проверка не нужна.
Ну еще пример для флажочка:

… Я хочу получать спам :<br /> <input type=»checkbox» name=’ads_spam’ /><br /> …

1234 ...Я хочу получать спам :<br /><input type=«checkbox» name=‘ads_spam’ /><br />...

В дополнение к теме произвольных полей во первых правила называния полей ads_ и adp_ и во вторых отображение этих самых полей методом Ads WordPRess и если это не сработает тогда официальный вариант http://codex.wordpress.org/Custom_Fields .