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

Ka_De_We

  • Новичок
  • 7
  • 0 / 0
Всем доброго времени суток!

У нас сложный товар, который пользователям через корзину покупать неудобно, т.е. они почти всегда звонят.
Хочу вместо корзины сделать просто форму из двух полей Имя и Телефон. Юзер отправил, мы перезвонили и всё обговорили.

VM 1.4, Joomla 1.5

Искал на форуме, но не нашёл.

подскажите, пожалуйста.
*

fsv

  • Moderator
  • 2781
  • 411 / 2
Подобные решения обычно платные.
Один из возможных вариантов: http://beagler.ru/virtuemart/plagin-bystrogo-zakaza-dlya-joomla-1-5-virtuemart-1-x.html
Из бесплатных есть и на форуме, и в сети просто формочки "Позвони мне", не связанные с компонентом, т.е. инфу о товаре не подхватывают, для админа не удобно (к разговору с клиентом готовится надо).
Веб-разработка: заказ. Только новая разработка.
*

Ka_De_We

  • Новичок
  • 7
  • 0 / 0
fsv, спасибо большое за быстрый ответ!

Просмотрел Вашу ссылку - не совсем то.

Из Вашего ответа понял, что мне как раз нужно формочку "Позвони мне", только чтобы она подхватывала наименование товара из VirtueMart. Пусть будет платная, лишь бы работала нормально.. МОжет, кто-нибудь знает такую?
*

fonbok

  • Новичок
  • 4
  • 0 / 0
Я реализовал это с помощью заглушки "задать вопрос по этому товару".. Упростил чутка и внешний вид довел до кнопки "заказать в 1 клик"
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Новая строка в textarea при регистрации пользователя

Автор refoxter

Ответов: 0
Просмотров: 3569
Последний ответ 03.03.2015, 11:06:49
от refoxter
[Решено] VirtueMart не отправляет письма активации пользователя или заказа

Автор akunari

Ответов: 17
Просмотров: 20700
Последний ответ 19.09.2014, 13:34:15
от frenzy
Как сделать редирект с index.php на /, не поломав VirtueMart?

Автор vkapas

Ответов: 2
Просмотров: 1672
Последний ответ 19.05.2014, 20:39:39
от draff
[Решено] Как сделать при клике на пустую корзину, надпись "Ваша корзина пуста"?

Автор Web_Studio_MAX

Ответов: 15
Просмотров: 4841
Последний ответ 16.05.2014, 01:31:47
от Art_i
Как отслеживать брошенные корзины в вирте

Автор rezon

Ответов: 13
Просмотров: 4132
Последний ответ 08.05.2014, 14:39:29
от Ruslant