Новости 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 Ответов
  • 1443 Просмотров
*

Topmanager

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

Хочу сказать пару слов про форум, что впервые из моей практики приоритетный поиск по специализированной проблеме не Google, а поиск по форуму. Это очень высокий уровень, что говорит о качестве данного ресурса. Да и люди с юмором. А navigen вообще навеял на перепросмотр "Анализируй это/то"
Плагины:




До этого стоял VirtueMart и возможно остались конфликтующие хвосты. Хотя помимо удаления компонента, таблицы в базе тоже чистил.

У самого догадок уже осталось едва. Например, если навести на ссылку "оформить заказ" выводится адрес, заканчивающийся на step2, хотя такого файла php в checkout нет. Есть ещё мысли попробовать сделать оформление заказа через ChronoForms, минуя JoomShopping. Ещё хочу купить OneStepCheckout, но не уверен, что это решит данную проблему.

Здесь много людей которые знают намного больше меня, может сталкивались с чем-то подобным или есть наводящие мысли. Не молчите, пожалуйста. Магазин почти готов, а сайт у меня первый и очень хочется закончить.
« Последнее редактирование: 28.08.2013, 15:11:18 от Topmanager »
*

nevigen

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

dmitry_stas

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

denben777

  • Захожу иногда
  • 157
  • 78 / 1
В шаблон сайта добавьте вывод системных сообщений:
Код
<jdoc:include type="message" />
Можно сразу же над:
Код
<jdoc:include type="component" />

Я ещё ни разу не видел как выглядят эти формы (шаги) заказа...
Демо-сайт JoomShopping.
*

Topmanager

  • Новичок
  • 6
  • 0 / 0
Да, товарищи. Дело именно в максимальном заказе: стояла 1000 руб - поставил, когда хотел выставить минимальный (видать промахнулся). Message, даже вставлять не пришлось, но буду иметь в виду на будущее.

Теперь все работает и, как обычно, требует регистрации, хотя я её отключил. Думаю у тех, кто перестанавливал сайт проблема была в том же и поможет ещё ни одному искавшему.

Всем громадный респект и '+' к карме, разумеется!

*

nevigen

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

В описании категории не работает плагин Jshortcodes

Автор SLV

Ответов: 1
Просмотров: 1190
Последний ответ 09.09.2024, 17:35:29
от kit2m2
Обновление количества товаров в корзине без кнопки "Обновить корзину"

Автор kit2m2

Ответов: 4
Просмотров: 2806
Последний ответ 23.07.2024, 12:23:33
от Шрек
Не работает pop-up окно в товаре

Автор Alex_gs

Ответов: 2
Просмотров: 1348
Последний ответ 06.06.2023, 07:12:10
от kit2m2
[Решено] Склонение числительных (кол-во товаров) в корзине (Multi basket AJAX)

Автор goga_pgasovav

Ответов: 5
Просмотров: 1763
Последний ответ 14.02.2023, 14:30:56
от goga_pgasovav
Узнать количество товаров в корзине внутри своего шаблона сайта

Автор goga_pgasovav

Ответов: 14
Просмотров: 1869
Последний ответ 10.02.2023, 22:11:42
от goga_pgasovav