Новости Joomla

Совет по Joomla: несколько значений по умолчанию в XML-формах для стандартных полей типа list

👩‍💻 Совет по Joomla: несколько значений по умолчанию в XML-формах для стандартных полей типа list.При работе над плагином возникла необходимость указать стандартный набор из нескольких элементов стандартного поля списка. И хотелось указать их в стандартном же атрибуте default для полей. Когда это нужно?Когда Ваши пользователи устанавливают плагин и НЕ заходят в настройки - в коде вы можете использовать значения по умолчанию с помощью класса Registry (писал об этом ранее) и всегда быть уверенным, что хоть какие-то жизненно необходимые параметры к вам придут всегда. 🧐 Но как сделать то же самое для интерфейса админки?Пользователя нужно направлять, предлагать очевидный работоспособный сценарий для начала, а дальше он уже сам разберется. Когда человек заходит в параметры свежеустановленного плагина в Form ещё нет данных и параметры по умолчанию выставляются из атрибутов default в xml-полях.
<field name="showdesc" type="radio"                       label="PLG_CFI_PARAM_SHOWDESC"                       class="btn-group btn-group-yesno"                       default="1">                    <option value="0">JNO</option>                    <option value="1">JYES</option>                </field>
Здесь по умолчанию будет включено "Да". И если пользователь не переключит параметр, то при сохранении мы ожидаемо получим "да" в params плагина.Для поля списков type=&quot;list&quot; можно указать значение по умолчанию и многие знают, что его можно указать только одно.
<field type="list"                       name="article_fields"                       label="article_fields"                       description="article_fields_desc"                       layout="joomla.form.field.list-fancy-select"                       multiple="true"                       default="id"                >                    <option value="id">id</option>                    <option value="title">title</option>                    <option value="alias">alias</option>                    <option value="introtext">introtext</option>                    <option value="fulltext">fulltext</option>                    <option value="state">state</option></field>
Но у нас поле с множественным выбором (атрибут multiple) и хотелось бы указать несколько значений по умолчанию...Оказывается, так можно сделать. Для этого в атрибуте default нужно указать json с нужными параметрами в виде {int}key : {string} value.Например, default='{"0":"id","1":"title"}'.
<field type="list"                       name="article_fields"                       label="article_fields"                       description="article_fields_desc"                       layout="joomla.form.field.list-fancy-select"                       multiple="true"                       default='{"0":"id","1":"title"}'                >                    <option value="id">id</option>                    <option value="title">title</option>                    <option value="alias">alias</option>                    <option value="introtext">introtext</option>                    <option value="fulltext">fulltext</option>                    <option value="state">state</option></field>
⚠️ Обратите внимание на кавычки! Поскольку json_decode не понимает одинарные кавычки собственно json нужно писать с двойными, а значение для атрибута default писать в одинарные.🙏 За подсказанное решение огромное спасибо участникам нашего сообщества - разработчикам Дмитрию Васюкову (@fictionlabs) и Игорю Бердичевскому (@septdir).@joomlafeed#joomla #разработка #webdev #development

0 Пользователей и 1 Гость просматривают эту тему.
  • 6 Ответов
  • 1093 Просмотров
*

aslanamirov

  • Захожу иногда
  • 87
  • 4 / 0
  • Ййехаа!
Я примерно понимаю как создать пользователя через sql запрос

Код
INSERT INTO jos_users( `name`, `username`, `password`, `email`, `usertype`, `gid` )
VALUES( 'Иванов Иван', 'ivanov', md5('12345'), 'ivanov@mail.ru', 'Registered', 18 );

но меня интересует как зациклить этот процесс. у меня есть 5000 пользователей (держатели карты) как их всех забить в базу?

и еще вопрос как дополнить профиль пользователя дополнительными полями типа: Скидка, номер телефона, сумма на скидочной карте ну и т.п.?

заранее спасибо! если знаете где копать натолкните, рад буду даже забугорному сайту
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
смотря в каком они у вас виде хранятся. csv если можно сделать - то через phpMyAdmin импорт просто и все. там же (phpMyAdmin) добавьте нужные дополнительные столбцы в таблицу/ ну или в php цикл организовать
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

aslanamirov

  • Захожу иногда
  • 87
  • 4 / 0
  • Ййехаа!
смотря в каком они у вас виде хранятся. csv если можно сделать - то через phpMyAdmin импорт просто и все. там же (phpMyAdmin) добавьте нужные дополнительные столбцы в таблицу/ ну или в php цикл организовать

вот меня про столбцы интересует, а как потом выводятся эти поля? просто ни разу не сталкивался
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
вот меня про столбцы интересует, а как потом выводятся эти поля? просто ни разу не сталкивался
никак... :)
от того что они есть они не выведутся...
править функцию обработки полей записе пользователя и править шаблон вывода:)
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

aslanamirov

  • Захожу иногда
  • 87
  • 4 / 0
  • Ййехаа!
никак... :)
от того что они есть они не выведутся...
править функцию обработки полей записе пользователя и править шаблон вывода:)
прошу, подскажи в каком файле есть такое подобное - остальное сам сделаю
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
lib\factory.php
lib\functions.php
lib\jtableauto.php
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Дополнительные поля для категории JoomShopping

Автор goga_pgasovav

Ответов: 3
Просмотров: 1799
Последний ответ 07.07.2024, 08:43:15
от nevigen
Как создать налог Без НДС?

Автор Satool

Ответов: 4
Просмотров: 924
Последний ответ 23.03.2024, 17:28:19
от Satool
WT JShopping cart save плагин брошенных корзин пользователей. JoomShopping 5.3+

Автор sergeytolkachyov

Ответов: 4
Просмотров: 1511
Последний ответ 01.03.2024, 12:29:46
от kit2m2
Вывести описание группы пользователей

Автор Preview

Ответов: 8
Просмотров: 1121
Последний ответ 17.03.2023, 12:01:32
от kit2m2
Как создать связку между 1C, CRM Bitrix24 и JoomShopping на Joomla 3.4?

Автор Dimon777

Ответов: 38
Просмотров: 9223
Последний ответ 26.10.2022, 14:51:42
от sergeytolkachyov