Checkbox Dynamic и Checkbox Numeric - дополнительные поля SEBLOD, часть 2
Дополнительные бесплатные поля CCK SEBLOD – Checkbox Dynamic с данными из полей БД и Checkbox Numeric с данными в виде набора цифр.
В этой статье краткое описание следующей порции дополнительных полей Seblod. Это поля типа «Checkbox Dynamic», данные для которого поступают из таблицы БД и «Checkbox Numeric», данные для которого представляют собой набор цифр и формируются по заданному алгоритму.
Продолжаем о следующей группе полей SEBLOD, которые можно условно назвать дополнительными. Это бесплатные поля типа «Checkbox Dynamic» и «Checkbox Numeric», разработанные и распространяемые разработчиками самого расширения.
Для получения бесплатного дополнительного поля (они помечены как FREE и имеют стоимость 0€) в первый раз нужно положить его в корзину и перейти к оформлению заказа, подробнее в материале «Core 42, Author, Captcha Math, NoCaptcha - дополнительные поля SEBLOD, часть 1».
Дополнительные поля SEBLOD могут также распространяться на коммерческой основе. О том, как оплатить и получить доступ к коммерческим полям я напишу позже, в соответствующем материале.
Как и все прочие, поля типа «Checkbox Dynamic» и «Checkbox Numeric», предоставляют возможность выбора данных пользователем-администратором в формах админки (admin) или сайта (site-form) при создании материала, а также ввода данных для поиска (site-search) и чтения на страницах (site) обычным пользователем.
Поэтому поля рассматриваются в аспектах, соответствующих указанным сторонам и режимам сайта, а для тех полей, для которых это важно, расскажу и о настройках (options).
Поле Seblod типа «Checkbox Dynamic»
Дополнительное поле Seblod типа «Checkbox Dynamic» предназначено для выбора и вывода в материале данных, значения которых хранятся в таблице БД.
В формах (admin, site-form, site-search) поле типа Checkbox Dynamic выглядит как поле со множеством <input type="checkbox">. Сетка чекбоксов устанавливается при настройке поля.
Данные для чекбоксов получаются из таблицы БД, логика получения такая же как для поля Select Dynamic. Это поле более удобно в работе со множественными данными чем поля типа Select Dynamic.
При создании записи администратор сайта отмечает один или несколько нужных чекбоксов, например, один или несколько цветов для товара или, как на изображении, одну или несколько стран. Аналогично может поступить и пользователь в форме поиска при отборе записей.
На сайте поле типа Checkbox Dynamic выводится на странице материала (товара) как обычная строка данных. Если выбрано (отмечено) несколько чекбоксов, их значения будут выведены с разделителем. Разделитель задается в настройках поля.
Основная «магия» для использования полей типа Checkbox Dynamic происходит при их создании (настройке). Как и для других полей есть возможность создания подписи (label) и значения по-умолчанию. Здесь же происходит наполнение поля.
Заполнение поля данными производится запросом к БД. Подходов к наполнению поля, а значит формированию запроса к БД, может быть два – использование полей ввода (режим Construction) и непосредственная запись запроса (режим Free).
В режиме Construction – все данные формирующие запрос к БД заносятся в созданные разработчиком Seblod поля. Поле «Table» предназначено для внесения имени таблицы БД.
Поле Checkbox Dynamic позволяет обратится к любой таблице БД сайта, как к стандартной для Joomla (#__categoties, #__content и т.д.), так и к любой созданной разработчиком сайта, например, к таблице со списком стран.
В поле «Options Name» вносится имя поля таблицы БД, значение из которого будет являться подписью для чекбокса и выводится на сайте, например, поле наименование страны (country_name) таблицы стран (#__countries).
В поле «Options Value» вносится имя поля БД, значение из которого будет записываться в качестве значения поля Checkbox Dynamic в базу (если хранение данных поля в БД настроено), например, ID таблицы со списком стран. Таким образом для чекбокса формируется пара «Текст = Значение (Text = Value)».
Это обязательные для работы поля параметры. Также можно заполнить данными поля «Where» для детализации запроса к таблице с большим числом записей, и поле «Order By» для сортировки результата запроса.
На мультиязычных сайтах поле Checkbox Dynamic обеспечивает возможность формирования пар Text (RU, EN, DE...) => Value, где в качестве Text выступает отдельное поле таблицы БД.
В режиме Free – необходимо самостоятельно сформировать запрос к БД и записать его в поле «SQL Query».
На страницах сайта на CMS Joomla нет примеров полей, созданных с использованием Checkbox Dynamic. Пользовательские – любые поля с удобным выбором нескольких значений, с хранением в таблицах БД.
В каталоге товаров при помощи поля типа Checkbox Dynamic можно создавать множество полей - выбора данных. Например – выбор стран, цветов и т.д., особенно удобно для мультиязычных сайтов.
Поле Seblod типа «Checkbox Numeric»
Дополнительное поле Seblod типа «Checkbox Numeric» предназначено для выбора и вывода в материале цифровых данных в виде чекбоксов.
В формах (admin, site-form, site-search) поле типа Checkbox Numeric выглядит как поле со множеством <input type="checkbox">, но в отличии от предыдущего поля в качестве подписей выступают те же цифры. Сетка чекбоксов устанавливается при настройке поля.
Набор цифр формируется автоматически по заданному в настройках алгоритму. При создании материала администратор сайта выделяет нужный набор цифр для последующего вывода в материале. Аналогично может поступить и пользователь в форме поиска при отборе записей.
На сайте поле типа Checkbox Numeric выглядит как обычная строка данных, в которой содержится выбранная цифра или несколько с использованием разделителя. Разделитель выбирается в настройках поля.
Как и для других полей для поля типа Checkbox Numeric есть возможность создания подписи (label) и значения по умолчанию.
Наполнение данными для выбора производится автоматически на основании заданных при настройке параметров. Главные из них: «Start», «Step», «End» и «Math» (функция обработки). В качестве функции как правило используется сложение, но есть и другие варианты.
Есть и дополнительные (необязательные параметры) используемые в специфических ситуациях. Так в блоке чекбоксов может быть выведены цифры с определенным числом знаков и добавлены десятичные знаки. Могут быть добавлены пользовательские данные в начало и конец блока.
Примеры полей типа Checkbox Numeric на сайте Joomla отсутствуют, пользовательские – какие-либо наборы, которые должны содержать цифры. Например, такой набор может содержать предложение с указанием события на «1,3,7» неделях или в «12, 14, 16» часов и т.д.
Классификация полей моя собственная, без претензии на общее признание, мне просто так удобно. На этом сайте в разделе Мини Каталог/Поля Seblod, я помечаю их как Plus.
Дополнительные поля доступны на официальном сайте SEBLOD в разделе STORE/Extentions. Для доступа к скачиванию полей на сайте разработчика расширения необходимо зарегистрироваться.
Продолжение в следующем материале.
Другие материалы по теме
- Checkbox Dynamic и Checkbox Numeric - дополнительные поля SEBLOD, часть 2
- Core 42, Author, Captcha Math, NoCaptcha - дополнительные поля SEBLOD, часть 1
- Field X, Div, Tabs, Icon - стандартные поля SEBLOD
- File, Folder, Form HTML и Joomla! Article дополнительные поля SEBLOD, часть 4
- Form, List, Select Dynamic Cascade, Search Query платные поля SEBLOD
- Group, Group X, Email и Module - стандартные поля SEBLOD
- Seblod и материалы Joomla, особенности работы
- Select Dynamic, Ordering и Generic - стандартные поля SEBLOD
- Select Simple, Multiple, Numeric - стандартные поля SEBLOD, простые списки
- Text, Textarea, Checkbox, Radio, Calendar - стандартные поля SEBLOD
- Upload Image, Upload File и Color Picker - стандартные поля SEBLOD
- Wysiwyg Editor, Freetext, Link, Button - стандартные поля SEBLOD
- Youtube, Vimeo, Dailymotion, Iframe - дополнительные поля SEBLOD, часть 3
- Плагины SEBLOD Link – добавляем ссылки к полям
- Плагины SEBLOD Live – подстановка значений в поля
- Плагины SEBLOD Restriction – вывод полей по определенным условиям
- Плагины SEBLOD Typo – переопределяем стандартный вывод полей
- Поля группы Joomla Library - стандартные поля SEBLOD