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

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Вернуться в магазин
« : 16.08.2014, 13:30:06 »
Спойлер
[свернуть]
Нажимаю В корзину, нажимаю на удалить, соглашаюсь на удаление,
нажимаю вернуться в магазин попадаю на страницу boosting - в моем случае это ЛЮТЫЙ косяк.
Нажимаю В корзину, нажимаю вернуться в магазин попадаю на страницу boosting - опять же ЛЮТЫЙ косяк.
Возможно сделать так чтобы при нажатии на вернуться в магазин меня перекидывало страницу которая под спойлером?
Спойлер
[свернуть]
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: Вернуться в магазин
« Ответ #1 : 16.08.2014, 17:47:55 »
Как вариант, через javascript, вместо той кнопки вставь это <div onсlick="history.go(-1)">Кнопка назад</div>
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Linfuby

  • Завсегдатай
  • 1242
  • 176 / 0
  • Всё просто...
Re: Вернуться в магазин
« Ответ #2 : 17.08.2014, 11:56:37 »
administrator/index.php?option=com_jshopping&controller=config&task=otherconfig
Пункт "Назад в магазин (ссылка в корзине)"
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054
*

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Re: Вернуться в магазин
« Ответ #3 : 20.08.2014, 03:57:59 »
administrator/index.php?option=com_jshopping&controller=config&task=otherconfig
Пункт "Назад в магазин (ссылка в корзине)"

совсем не понял
Как вариант, через javascript, вместо той кнопки вставь это <div onсlick="history.go(-1)">Кнопка назад</div>
В каком это файле заменить?
« Последнее редактирование: 20.08.2014, 04:02:44 от Jokerrs »
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: Вернуться в магазин
« Ответ #4 : 20.08.2014, 15:29:26 »
Linfuby, незнал что такой параметр есть..)

Jokerrs, выбираешь куда тебе надо переходить при нажатии на кнопку "назад" в корзине
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Re: Вернуться в магазин
« Ответ #5 : 20.08.2014, 17:12:42 »
Linfuby, незнал что такой параметр есть..)

Jokerrs, выбираешь куда тебе надо переходить при нажатии на кнопку "назад" в корзине
Это где то в настройках JoomShopping?
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: Вернуться в магазин
« Ответ #6 : 20.08.2014, 18:44:07 »
Тебе ссылку для чего дали?
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Cerber

  • Захожу иногда
  • 266
  • 34 / 0
  • Богиня Иштар и ее пес Пи..ц
Re: Вернуться в магазин
« Ответ #7 : 20.08.2014, 20:49:41 »
Так так не надо переходить на личности :)
человек наверно просто с таким не сталкивался
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: Вернуться в магазин
« Ответ #8 : 20.08.2014, 20:58:21 »
нисколечки не переходил..) просто иногда необходимо хоть чуть чуть думать..
Дедукция типа (шерлок холмс все дела):
1) так что это вообще? это ссылка!
2) как используются ссылки? они куда то ведут!
3) после моего вопроса была дана ссылка, значит она ведет туда, куда мне нужно.
4) Ссылка непонятная. Но что-то знакомое.
5) Точно! Я пишу так когда вхожу в админ зону!
6) Но, она без адреса моего сайта  :dry:
7) Наверно потому что я ему не говорил его, так, думаем дальше...
8) Вау! Я же знаю адрес СВОЕГО САЙТА! Точняк, наверно надо после адреса сайта вставить...
9) Блин, вот я догадливый, расскажу не поверят...)))

« Последнее редактирование: 20.08.2014, 21:04:41 от shurakana »
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Linfuby

  • Завсегдатай
  • 1242
  • 176 / 0
  • Всё просто...
Re: Вернуться в магазин
« Ответ #9 : 20.08.2014, 22:53:29 »
shurakana, Море сарказма, но как инструкция некоторым пригодиться.
Респект.
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054
*

nevigen

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

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: Вернуться в магазин
« Ответ #11 : 20.08.2014, 23:06:36 »
Вы же знаете, такие деяния поощрять нельзя, ни в коем случае..)) Ибо они продолжатся..  8)
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
Re: Вернуться в магазин
« Ответ #12 : 20.08.2014, 23:11:36 »
увы.. знаю... :(
но они от этого все равно не прекращаются :)
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: Вернуться в магазин
« Ответ #13 : 20.08.2014, 23:21:31 »
Я всмысле про мои "деяния" (про ватсона)..))

А про ТС-ные и говорить нечего, никогда не прекратятся.. С этим ничего не поделаешь, и это нормально..))
Потешил грешную душенку свою, разок из 10, и успокоился..)))
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Re: Вернуться в магазин
« Ответ #14 : 21.08.2014, 08:20:08 »
Так так не надо переходить на личности :)
человек наверно просто с таким не сталкивался
http://s019.radikal.ru/i621/1408/6c/527d45b8cbe0.png
Давайте тепeрь разберемся, что мне надо там прописать чтобы при нажатии на вернуться в магазин меня перекидывало на нужную мне страницу, указанную в шапке, ну или хотя бы на главную выкидывало.
Спойлер
[свернуть]
« Последнее редактирование: 21.08.2014, 08:27:12 от Jokerrs »
*

Linfuby

  • Завсегдатай
  • 1242
  • 176 / 0
  • Всё просто...
Re: Вернуться в магазин
« Ответ #15 : 21.08.2014, 08:48:16 »
перекидывало на нужную мне страницу
Указать нужную страницу.
В подсказке к пункту написано 3 варианта. Попробуйте все 3 и Вы поймете что Вам нужно
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: Вернуться в магазин
« Ответ #16 : 21.08.2014, 08:54:13 »
Да я хотел уж написать, но, потом понял что он тролль по хлеще нашего..))
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Re: Вернуться в магазин
« Ответ #17 : 28.08.2014, 04:18:21 »
Указать нужную страницу.
В подсказке к пункту написано 3 варианта. Попробуйте все 3 и Вы поймете что Вам нужно
чтоб я там не указывал все равно перекидывает в категории.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Что если магазин - не основная страница сайта?

Автор Alex_gs

Ответов: 5
Просмотров: 1126
Последний ответ 15.10.2022, 13:43:26
от Alex_gs
Кнопка "Вернуться в магазин" возвращает на главную при любых настройках

Автор hlopusha16

Ответов: 3
Просмотров: 1109
Последний ответ 17.12.2016, 14:11:52
от hlopusha16
Пропал магазин в админке, сайт работает

Автор tochcha

Ответов: 6
Просмотров: 1219
Последний ответ 03.04.2016, 22:28:10
от tochcha
Выдержит ли joomshoping магазин на 20-30 тысяч товаров

Автор newsite46

Ответов: 2
Просмотров: 978
Последний ответ 20.02.2015, 21:08:47
от newsite46
Вернуться в магазин: 500 - Макет maincategory не найден

Автор maxim99z

Ответов: 2
Просмотров: 1135
Последний ответ 17.11.2014, 09:17:00
от maxim99z