Ads-WordPress 4 – быстрый старт.

Выкладываю бета версию, плагин еще сырой но вполне рабочий.
Тестируем, про ошибки пишем прямо сюда.
Итак, самое главное – конструировать форму ввода теперь можно используя короткие теги, что такое короткие теги смотрите Shortcode API.

Загружаем плагин, активируем, переходим в настройки, настраиваем по аналогии с версией 3.x. Почти все тоже самое, в основном поменялся порядок опций, все новое опишу потом.
Буду объяснять сразу в примерах.
Создаем статическую страницу (!обязательно переключаемся в режим HTML или текст вверху справа 2 вкладчики), пишем заголовок “Добавить Объявление” с текст:

! Имена тегов должны начинаться с префикса ads_

  • [ads_breadcrumbs] показывает хлебные крошки, какую категорию выбрал юзер на этапе выбора категории.
  • Заголовок:[ads_input name=post_title…/] элемент преобразуется во всем известный тег ввода все атрибуты указанные в [ads_input] автоматом транслируются в html код. Поэтому все делаем по аналогии задаем type=
    checkbox|password|radio|text по умолчанию text, задаем размер size=123 если надо, класс и id и тд.

    Имеет дополнительные атрибуты:
    terms=$: проверка значения, об условиях подробнее  напишу ниже, здесь же проверяется, что заголовок не пустой – любое не пустое значение;
    emsg=’Требуется заголовок!’: если проверка не прошла, то выводит текст этого сообщения.

  • Текст:[ads_textarea… преобразуется в html код textarea, точно также все атрибуты кроме специфических условия (terms) и сообщения об ошибке (emsg) транспортируются в html код.
    terms=”strlen($)>20″ проверяем чтобы текст был длиннее 20 символов
  • Цена:[ads_input name=”ads_price” … текстовый элемент. Проверяем условие ввода terms=”is_numeric($)” должно быть цело число.
  • С условиями согласен: [ads_input name=’ads_ok’ type=”checkbox” … пример input в виде checkbox, также есть условие и текст сообщения если пользователь забыл поставить галочку.
  • [ads_file name=0] загрузка файла в качестве имени указывать целые числа от Нуля.
  • [ads_buttons] последний код разворачивается в набор кнопок Опубликовать, Обновить, Удалить … Если форма большая можно продублировать элемент, вставить вверху и внизу страницы.

Условия

Для каждого [шорткода] кроме файлов, можно задавать условия проверки значений и одно сообщение в случае ошибки.
Условие задается с помощью атрибута terms=’условие на мини php’.
Сообщение об ошибке с помощью атрибута emsg=’Текст ошибки!’ – думаю тут все понятно.
В условии можно использовать ограниченный набор слов из списка:

а также круглые скобки () и символ $. Знак $ в процессе проверки заменяется на значение которое ввел пользователь.
Пример потребуем пользователя ввести год рождения:
[ads_input name=”ads_year” terms=”is_int($) and ($ > 1900) and ($ < 2012)” emsg=”Год рождения неправильная дата!”/]
проверяем что введено целое число is_int($) далее проверяем что число это больше 1900 года и меньше 2012.

Этот способ для простых условий! Более сложные проверки делаем как в старой версии плагина: подключаем свой фильтр на событие ads_check_fields.
И тут уже все карты вам в руки.

[ads_select] – предназначен для создания списка выбора html тега select. Источник данных:  внутреннее содержание, таксономия  category или post_tag,  внешний массив данных.

Пример – источник данных внутренне содержание шорткода:

Источник данных категория и теги:

taxonomy=category – указываем источник данных категории
child_of=actions – задаем категорию контейнер (родительскую категорию) ярлык(slug) = action, можно указать просто id категории.

Вообще если задан атрибут taxonomy выпадающий список мы получим с помощью стандартной WordPress функции wp_dropdown_categories, а все атрибуты заданные в шорткоде автоматом передаются в эту функцию. Выбор аргументов тут широчайший, короче читайте манул и пробуйте wp_dropdown_categories

Хороший пример список select раскрытого типа с возможностью мультивыбра – можно выбрать несколько пунктов нажав Shift или Ctrl.
size=”5″ размер по высоте
multiple=”multiple” включаем мультивыбор
Это все стандартные атрибуты html тега select поэтому вопросов тут быть не должно!
terms=”(1=count($))” – пример составного условия поскольку у нас мультивыбор значение $ будет содержать массив. Используем функцию count чтобы узнать сколько выбрано пунктов в списке, кол-во должно быть больше 1 и меньше 3.

Внешний массив:
Предварительно, естественно, необходимо создать этот массиив для этого в самый раз подойдет ads_config.php – создаем этот файл в директории плагина, но можно воспользоваться functions.php в папке текущей темы.

Теперь можно использовать это масиив в качестве источника данных в форме

selected=2 по умолчанию будет выбран третий! по счету пункт отсчет начинается с 0.
Простой выпадающий список без проверок.

Аналогично работаю [ads_radio_area] и [ads_checkbox_area]:
[ads_radio_area] создает область зависимых переключателей radio. Источник данных : внутренний, категория, теги, внешний массив.
[ads_checkbox_area] создает область независимых переключателей checkbox. Источник данных : внутренний, категория, теги, внешний массив.
Здесь таксономии получаем через функции get_terms($taxonomy, $args) и точно также все аргументы заданные в шорткоде транслируются в в массив $args, что открывает широкие возможности создания различных наборов данных. Манул get_terms

В шорткодах [ads_select], [ads_radio_area] и [ads_checkbox_area] встроена автоматическая проверка на выход за область заданных значений.

ads-wordpress_4.zip

на этом пока все

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url=""> [php]…[/php] [html]…[/html] [css]…[/css] [text]…[/text] [code]…[/code]

  • sdfsdfsdf
  • sdfsdfsdfsdf
  • sdfsdfsdfs
  • sdfsdfsdf
  • sdfsdfsdfsdfs
  • sdfsdfsdfs
  • sdfsdfsdf
  • sdfsdfsdfsdfs