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

kontrast

  • Захожу иногда
  • 122
  • 2 / 0
где натроить JoomShopping чтоб при оформлении заказа ненадо было указывать адрес доставки
*

kontrast

  • Захожу иногда
  • 122
  • 2 / 0
нашел такой ответ
http://www.webdesigner-profi.de/joomla-webdesign/joomla-shop/forum/posts/10/904.html?lang=de
но у меня параметр доставки выключен а всеравно почемуто переходит на него чекаут и показывает информацию при подтверждении

может кто подскажет что делать чтоб поправить?
*

dmitry_stas

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

kontrast

  • Захожу иногда
  • 122
  • 2 / 0
ненадо вообще окна что отвечает за доставку
тоесть когда в корзине нажал клиент оформить заказ
ему либо окно подтверджения
либо "спасибо за заказ" чтоб вывело
*

kontrast

  • Захожу иногда
  • 122
  • 2 / 0
а то если все поснимать то остаються имя и мейл обизательные
а мне надо и их убрать
*

dmitry_stas

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

kontrast

  • Захожу иногда
  • 122
  • 2 / 0
как вариант свободным атребутом на страничке продукта
*

dmitry_stas

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

kontrast

  • Захожу иногда
  • 122
  • 2 / 0
но всеже
если юзер заполнил анкету регистрации
то почему он должен еще раз видить окно с адресом
неужели нету никакого способа пропустить это окно кроме платного решения?
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
старый добрый редирект, если все поля необязательны
*

kontrast

  • Захожу иногда
  • 122
  • 2 / 0
я не могу отключить от обизательных мейл и имя
*

dmitry_stas

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

kontrast

  • Захожу иногда
  • 122
  • 2 / 0
но если доставки как такой нет
а только мейл который он заполняет при регистрации
то нет смысла его переспрашивать тотже мейл который уже и подтвержден

*

nevigen

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

dmitry_stas

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

kontrast

  • Захожу иногда
  • 122
  • 2 / 0
ну во
как долго надо было мучиться чтоб обновить версию )
спасибо всем за помощь
с меня в репу!
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
имено потому не устаю повторять...
пишите наиболее полно информацию.. даже в правилах раздела указано.
но читать правила это конечно для новичков/слабаков или когда надо поиметь поставщика(хотя вот тут как раз уже точно поздно).

указали бы версию раньше поимели бы и ответ раньше;)
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Отобразить данные из БД на шаге выбора доставки

Автор Dolphin4ik_1

Ответов: 17
Просмотров: 1140
Последний ответ 17.01.2022, 08:59:55
от kit2m2
Адрес доставки

Автор Влад

Ответов: 3
Просмотров: 5411
Последний ответ 23.10.2021, 19:02:05
от nevigen
Вывод даты доставки и самовывоза

Автор dron

Ответов: 12
Просмотров: 4087
Последний ответ 27.02.2021, 09:56:08
от brandonlang
Как вывести в карточке сумму для бесплатной доставки?

Автор Dolphin4ik_1

Ответов: 4
Просмотров: 676
Последний ответ 18.02.2021, 00:06:27
от Dolphin4ik_1
Отображение полей адреса для доставки

Автор SolopoV

Ответов: 11
Просмотров: 1771
Последний ответ 11.12.2020, 19:31:30
от nevigen