Новости 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 Гость просматривают эту тему.
  • 19 Ответов
  • 1403 Просмотров
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
Где мои 17 лет?)))
« : 24.04.2018, 18:18:12 »
В общем, народ, сегодня у меня круглая дата... *DRINK*
В связи с этим разные мысли приходят в голову. Сей пост немного неформат для нашего форума, но старички поймут!))) Поймут, потому что, когда ты из года в год каждый свой ДР проводишь на форуме...форум - это твоя вторая семья, на самом деле, когда огромный промежуток своей осознанной взрослой жизни ты проводишь в кругу единомышленников -  это очень круто! yes!
Можно сказать, 30-ка - это такой рубеж, который, конечно, каждому предстоит пройти. Это немного символично, т.к. детство уже далеко, а пошалить еще хочется! ;D
С другой стороны, грустинка тоже присутствует...тут не буду развивать дальше тему, т.к. закидают помидорами! Впереди еще ого-го сколько всего, а время бежит и нужно еще много чего успеть.
Так что объявляю общефорумный день имени ELLE, сегодня жгите как хотите)) обещаю сильно не банить, разве что слегка! Всем чмок, ваша ELLE :-* :-* :-*

 *DRINK* *DRINK* *DRINK*
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Где мои 17 лет?)))
« Ответ #1 : 24.04.2018, 18:31:02 »
Спортсменка! Комсомолка! Леди-терминатор и просто красавица!
Здоровья, профессионального роста, личного счастья! С днюшкой!  *DRINK*
*

nevigen

  • Легенда
  • 10451
  • 863 / 25
  • http://n*****n.com
Re: Где мои 17 лет?)))
« Ответ #2 : 24.04.2018, 18:36:20 »
как сегодня ? опять?
нет нет нет :)
у таких как ты, круглых дат нет ! ;)
ты всегда будешь стройной и желанной:) потому никаких круглых !
хотя нет... некоторые округлости конечно должны быть ;)
и какие то не те мысли тебе в голову пошли;) там должны быть РНР операторы :) а у них сомнений нет :)
с ДНЮШЕЧКОЙ ТЕБЯ !

БУДЬ ЗДОРОВА И СЧАСТЛИВА !
будь в достатке и любима, будь везде где захочешь быть и будь долго долго !
если ты потеряла свои 17 лет, я те помогу найти, твои 17 лет еще впереди ;) и вроде как минимум еще 2 раза ;)
так что не ищи, а ожидай и готовься :)


п.с.  я люблю говаривать в круглые ровные даты... что наконец-то в игре с жизнью, ты побеждаешь :)
причем это всегда касается и внутреннего мира... он рельно меняется на пороговых датах, не знаю почему так :)
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Re: Где мои 17 лет?)))
« Ответ #3 : 24.04.2018, 18:37:55 »
Да, 30 лет - дата знаменательная. Почему-то именно она воспринимается как конец юности. Не верь своим чувствам - они врут) Будут внуки - и все равно будешь чувствовать себя на 18, и будешь хулиганить и отжигать - если, конечно, захочешь. Я знаю про что говорю  ;)

С днюшечкой тебя, солнце, еще раз)  *DRINK*

А профдеформация - она да, имеет место быть  ;D
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Где мои 17 лет?)))
« Ответ #4 : 24.04.2018, 18:38:42 »
ДР? Где моя большая ложка?  ;D

"Возраст - это состояние души", так что тут все упирается именно в то, чтобы не дать лени и выгоранию возобладать над желанием пошалить  ;D.
Я вот в 33 года на вел как взгромоздился, так сразу показал всем обрюзгшим друзьям, кто тут пионэр!
В общем, в 30 ещё рано думать о вечном. Приходите в 50, обсудим  ;D (щас придет robert и перенесет на 70  ;D)
С днюхом!  ;D
*

wishlight

  • Гуру
  • 5062
  • 315 / 1
  • От 300 руб быстрый хостинг. Сервера.
Re: Где мои 17 лет?)))
« Ответ #5 : 24.04.2018, 20:04:41 »
С Днем Рождения  ^-^
*

CB9T

  • Захожу иногда
  • 125
  • 10 / 0
  • Евгений Копылов - CB9TOIIIA
Re: Где мои 17 лет?)))
« Ответ #6 : 24.04.2018, 20:14:01 »
С Днем Рождения  ^-^

P.S. Сегодня и у isay777 ДР :)
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Где мои 17 лет?)))
« Ответ #7 : 24.04.2018, 20:41:47 »
Юля! В этот день рождения желаю тебе легкости духа, чтобы легко принимала то, чего поменять уже не можешь. И силы, чтобы меняла то, что можешь поменять. Ну и счастья, чтобы одно с другим местами не поменялось! :) С днем рождения!  *DRINK*
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ProtectYourSite

  • Живу я здесь
  • 2366
  • 138 / 4
  • Безопасность вебсайтов
Re: Где мои 17 лет?)))
« Ответ #8 : 24.04.2018, 20:58:27 »
Присоединяюсь к поздравлениям!
*

Mehanick

  • Давно я тут
  • 846
  • 5 / 0
Re: Где мои 17 лет?)))
« Ответ #9 : 24.04.2018, 21:08:08 »
Тоже поздравляю!
*

fsv

  • Живу я здесь
  • 2781
  • 411 / 2
Re: Где мои 17 лет?)))
« Ответ #10 : 24.04.2018, 22:32:05 »
Поздравляю.  *DRINK*
Веб-разработка: заказ. Только новая разработка.
*

capricorn

  • Завсегдатай
  • 1949
  • 118 / 3
Re: Где мои 17 лет?)))
« Ответ #11 : 24.04.2018, 23:21:54 »
Обаяние и мягкость,
Грациозная всегда,
Женщина-Телец мечтает
О подарках и цветах!

Настоящая хозяйка,
Любящая мать, жена,
Женственностью, красотою
Отличается она.

С днем рожденья поздравить
Мы ее сейчас хотим,
Пожелать ей много счастья,
Дух ее непобедим.

PS. Это детский возраст.  ;). Что в нем символичного такого  ;D .
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
Re: Где мои 17 лет?)))
« Ответ #12 : 25.04.2018, 00:25:48 »
Здоровья
Спасибо!)

как сегодня ? опять?
И не говори...какое-то дежавю под новым соусом))

Будут внуки
к следующей дате вполне возможно)

чтобы не дать лени и выгоранию возобладать
Движение-жизнь! Респект братьям велосипедистам))

С днем рождения! 

Присоединяюсь
поздравляю!
Поздравляю. 
Дух ее непобедим.
Спасибо! :D *DRINK*
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Где мои 17 лет?)))
« Ответ #13 : 25.04.2018, 00:41:19 »
 *DRINK* *DRINK* *DRINK*
Поздравляю! 30 - самый сочный возраст!
Спойлер
[свернуть]
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Где мои 17 лет?)))
« Ответ #14 : 25.04.2018, 09:36:57 »
С прошедшим!
От сердца и от почек дарю тебе цветочек! :)
Создание сайтов, шаблонов, помощь в решении проблем.
*

khan-alex

  • Давно я тут
  • 649
  • 30 / 1
Re: Где мои 17 лет?)))
« Ответ #15 : 25.04.2018, 09:41:39 »
Можно сказать, 30-ка - это такой рубеж, который, конечно, каждому предстоит пройти. Это немного символично, т.к. детство уже далеко, а пошалить еще хочется! ;D
С другой стороны, грустинка тоже присутствует...тут не буду развивать дальше тему, т.к. закидают помидорами! Впереди еще ого-го сколько всего, а время бежит и нужно еще много чего успеть.
Ну что б сбылось это "много чего успеть" и следующий рубеж рассматривался не с грустинкой, а с высоты мудрости. Ну и с днём рождения, ещё успехов и справедливости на не лёгком поприще администратора.
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Re: Где мои 17 лет?)))
« Ответ #16 : 25.04.2018, 10:16:05 »
С Днем Рождения, ELLE, поверь мне 30 это еще только начало отличного жизненного периода.
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Где мои 17 лет?)))
« Ответ #17 : 25.04.2018, 10:21:54 »
"Сколько бы вам ни было лет, поверьте, это самый подходящий возвраст, чтобы любить, мечтать и радоваться жизни!"
Создание сайтов, шаблонов, помощь в решении проблем.
*

zikkuratvk

  • Глобальный модератор
  • 4820
  • 345 / 2
  • Обслуживаем проекты - дорого.
Re: Где мои 17 лет?)))
« Ответ #18 : 25.04.2018, 14:20:40 »
С Днем Рождения, ELLE, поверь мне 30 это еще только начало отличного жизненного периода.
Судя по последним постам :-) надо переименовать тему... 30 лет? еще не все кончено :-)

Юля еще раз с прошедшим днем рождения :-)
Хочется уникальное расширение? ===>>>> JoomLine - Разрабатываем расширения под заказ.
Использую хостинг TimeWeb и Reg
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
Re: Где мои 17 лет?)))
« Ответ #19 : 25.04.2018, 23:24:10 »
Всем спасибо еще раз, всем чмок за поздравлялки! :-* Темку прикроем, а то я вас знаю... ;)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться