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

Argawa

  • Захожу иногда
  • 139
  • 1 / 0
Продажа конфет
« : 24.12.2015, 13:10:07 »
Здравствуйте. Есть задача. Сайт по продаже конфет. НА первом этапе пользователь выбирает коробку с определенным объемом (вместительностью), например, 1 кг. НА следующем этапе он выбирает конфеты для покупки (с одной категории или с нескольких). НО! Он может набрать конфет лишь на 1 кг, так как он выбрал коробку 1 кг. Идея очень хорошая, думаю, многим бы не помешало решение данной задачи или же идеи по реализации. Заранее спасибо.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Продажа конфет
« Ответ #1 : 24.12.2015, 13:33:22 »
Идея очень хорошая, думаю, многим бы не помешало решение данной задачи или же идеи по реализации.
для вас - возможно. а как по мне - ужасна. но спорить не буду, может быть кто-то что-то и делал такое, предложит вам варианты. мне не встречалось.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Re: Продажа конфет
« Ответ #2 : 24.12.2015, 16:15:49 »
Argawa, сделайте наоборот. Набрал конфет - и в зависимости от веса уже дать доступ к выбору определенных коробок. Технически намного проще реализовать.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Продажа конфет
« Ответ #3 : 24.12.2015, 16:18:37 »
вот! это другое дело! за техническую сторону не думал, но для покупателя (и магазина) уж точно более правильно.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
Re: Продажа конфет
« Ответ #4 : 24.12.2015, 16:34:36 »
та ТС хотел видимо чтобы человек выбрал коробку Новогоднего подарка, а потом у нее набирал конфеты :)
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Продажа конфет
« Ответ #5 : 24.12.2015, 16:40:39 »
если выбрал конфет 1.3 кг, а коробки есть только на 1 кг, то значит надо предложить мне 2 коробки, а не уговаривать отложить 300 грамм.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
Re: Продажа конфет
« Ответ #6 : 24.12.2015, 16:51:01 »
если выбрал конфет 1.3 кг, а коробки есть только на 1 кг, то значит надо предложить мне 2 коробки.....
... 2 коробки, купон к стоматологу и напольные весы за полцены :)
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Продажа конфет
« Ответ #7 : 24.12.2015, 17:38:30 »
и все это с улыбкой и фразой "приходите еще" :)
что правда, это только если очень правильный продавец :) а такие редко встречаются... или лень, или времени нет на такое, или вообще не задумываются об этом...
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Argawa

  • Захожу иногда
  • 139
  • 1 / 0
Re: Продажа конфет
« Ответ #8 : 24.12.2015, 18:00:25 »
Argawa, сделайте наоборот. Набрал конфет - и в зависимости от веса уже дать доступ к выбору определенных коробок. Технически намного проще реализовать.

Отлично. Только обязательно нужно будет делать проверку на то, сколько грамм конфет он набрал (покупатель) и ограничить вес по вместимости самой большой коробки. Если он набрал почти килограмм, то предлагается килограммовая коробка, если больше килограмма, то следующая коробка. Нужно будет тогда у клиенту предложить такой вариант. Думаю, он согласится.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Продажа конфет
« Ответ #9 : 24.12.2015, 18:16:34 »
и ограничить вес по вместимости самой большой коробки
:)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Re: Продажа конфет
« Ответ #10 : 24.12.2015, 18:26:47 »
Зачем  ограничивать? А если он хочет набрать сразу 50 кг и взять 50 килограммовых коробок?

Задача становится все интереснее и интереснее... ;D

Оставьте клиенту право самому решать сколько и каких коробок ему нужно. Выведите в корзине напоминание с ссылкой на выбор коробок - этого будет выше крыши.

В конце концов, разве он не имеет права сожрать половину купленных конфет ночью под одеялом втайне от всех на свете? На эти конфеты ему коробки не нужны.  ;)
« Последнее редактирование: 24.12.2015, 18:30:42 от Taatshi »
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

Argawa

  • Захожу иногда
  • 139
  • 1 / 0
Re: Продажа конфет
« Ответ #11 : 24.12.2015, 18:35:48 »
Зачем  ограничивать? А если он хочет набрать сразу 50 кг и взять 50 килограммовых коробок?

Задача становится все интереснее и интереснее... ;D

Оставьте клиенту право самому решать сколько и каких коробок ему нужно. Выведите в корзине напоминание с ссылкой на выбор коробок - этого будет выше крыши.

В конце концов, разве он не имеет права сожрать половину купленных конфет ночью под одеялом втайне от всех на свете? На эти конфеты ему коробки не нужны.  ;)


Да без проблем. Пусть хоть тонну купит и за ночь 31 декабря все сожрет. Хотя маловероятно, такой функционал за неделю не сделать...

К сожалению, клиент хочет, чтобы сначала коробки выбирались, а уже после - конфеты. Думаю, стоит в коммерческий отдел писать. Попрошу у него ТЗ. Всем спасибо за новогоднее конфетное настроение!
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Продажа конфет
« Ответ #12 : 24.12.2015, 19:56:33 »
ну жалко что не уговорили. все таки такая реализация и правильнее была, и проще.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Продажа больших файлов, мое решение

Автор arthouse.cv

Ответов: 0
Просмотров: 744
Последний ответ 19.07.2019, 13:01:03
от arthouse.cv
Продажа товара килограммами

Автор misterfalse

Ответов: 3
Просмотров: 1012
Последний ответ 14.11.2015, 12:40:32
от misterfalse