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

Валерон163

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Здравствуйте, уважаемые форумчане.
---
Joomla! 3.6.5 Stable
JoomShopping 4.15.1
---
После создания меню через Addon menu builder auto 2.1.3 (предыдущие версии тоже пробовал) перестает работать создание модулей Joomla.
Конкрето, при создании модуля, после нажатия кнопки сохранить, выкидывает в менеджер модулей без сохранения.
Т.о. и существующие модули нельзя изменить.
---
Пробовал удалять другие плагины JoomShopping, вдруг где конфликт. Не помогло.

Направьте, уважаемые... в какую сторону копать.
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Проблемы с генерацией меню
« Ответ #1 : 29.01.2017, 13:21:03 »
Спойлер
[свернуть]
А что консоль говорит? Может с иными расширениями конфликт?
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

Валерон163

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Re: Проблемы с генерацией меню
« Ответ #2 : 29.01.2017, 18:30:05 »
Спойлер
[свернуть]
А что консоль говорит? Может с иными расширениями конфликт?
В консоли файербаг ошибок не обнаружено.
Внесу ясность. Меню формирую автоматически. Т.е. по всему дереву категорий, а не в ручную
Так вот. Если генерируется, скажем, 200 категорий в пункты меню, то все нормально.
А если более 1000, то вот и получаются потом проблемы с модулями.
Т.е. дело может и не в расширении. Как Вы думаете?
« Последнее редактирование: 29.01.2017, 18:35:37 от Валерон163 »
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Проблемы с генерацией меню
« Ответ #3 : 29.01.2017, 18:42:10 »
Я не знаю, что вам ответить
Подозрение про Addon menu или конфликт его, с чем то.
По вашему рассказу, честно, не понятно.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

Валерон163

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Re: Проблемы с генерацией меню
« Ответ #4 : 29.01.2017, 18:56:12 »
Я не знаю, что вам ответить
Подозрение про Addon menu или конфликт его, с чем то.
По вашему рассказу, честно, не понятно.
А может вообще не хватать времени на исполнение скрипта, или что-то в этом роде?

Ведь при десятках категорий такого ошибок не происходит, а при 1000 появляются.
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Проблемы с генерацией меню
« Ответ #5 : 29.01.2017, 19:05:56 »
А может вообще не хватать времени на исполнение скрипта, или что-то в этом роде?
Может.
Создание сайтов, шаблонов, помощь в решении проблем.
*

buto

  • Давно я тут
  • 570
  • 1 / 0
Re: Проблемы с генерацией меню
« Ответ #6 : 30.01.2017, 23:58:42 »
Спойлер
[свернуть]
А что консоль говорит? Может с иными расширениями конфликт?
если вы этим расширением пользовались то у меня сервак ложился при 500 категоряих и 1200 посетителях в сутки. отключил и все стало тип топ
*

Валерон163

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Re: Проблемы с генерацией меню
« Ответ #7 : 31.01.2017, 10:35:41 »
если вы этим расширением пользовались то у меня сервак ложился при 500 категоряих и 1200 посетителях в сутки. отключил и все стало тип топ
В смысле отключили аддон?
Т.е. Вы сгенерировали меню, а потом отключили аддон и все? Помогло?
Мне это не помогло. к сожалению.
Альтернатив не знаю для генерации такого громадного меню. а вручную трата огромной кучи времени. 1600 пунктов....
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Проблемы с генерацией меню
« Ответ #8 : 31.01.2017, 10:45:25 »
А зачем вам столько пунктов меню?
Создание сайтов, шаблонов, помощь в решении проблем.
*

Валерон163

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Re: Проблемы с генерацией меню
« Ответ #9 : 31.01.2017, 10:57:06 »
А зачем вам столько пунктов меню?
У меня в JoomShopping 1662 категории товаров.

Для оптимальной навигации по всему каталогу использую Joomla меню, потому, как к конкретным пунктам меню Joomla (которые ссылаются на категории Joomshopping)  будут привязаны некоторые модули (Например в категории "Шарфы" будут показываться новинки шарфов).

Средствами JoomShopping я это сделать не смог (привязку модулей к категории).

Вот и приходится таким кривым способом пользовать - addon menu builder. Точнее сам аддон не кривой :) и работает вполне нормально.
Кстати даже пробовал более крутой тариф. не помогло.
*

dmitry_stas

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

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Проблемы с генерацией меню
« Ответ #11 : 31.01.2017, 11:16:50 »
Можно прописать позицию модуля, как алиас категории, например, и будут выводиться там, где надо без меню.
Создание сайтов, шаблонов, помощь в решении проблем.
*

Валерон163

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Re: Проблемы с генерацией меню
« Ответ #12 : 31.01.2017, 12:47:50 »
мне сложно представить взаимосвязь между количеством пунктов меню и невозможностью создания модулей

Уважаемый dmitry_stas, видимо я неправильно как-то объяснил. :)
Постараюсь сделать это более корректно.
Итак.

Создаю модуль mod_jshopping_categories (штатный).

- На главной он отображает все верхние категории (ГЛАВНЫЕ).
- При клике на любую категорию он открывает страницу этой категории и в самом этом модуле отображается и ГЛАВНАЯ категория и ее подкатегории и ниже все остальные ГЛАВНЫЕ категории, что мне совершенно не нужно. Мне нужны ТОЛЬКО ПОДКАТЕГОРИИ той, на которую я кликнул.
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
Re: Проблемы с генерацией меню
« Ответ #13 : 31.01.2017, 12:48:10 »
Средствами JoomShopping я это сделать не смог (привязку модулей к категории).

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

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Проблемы с генерацией меню
« Ответ #14 : 31.01.2017, 13:00:14 »
Проще саму позицию называть типа "moduleID", где ID - id категории текущей или алиас, я не помню, что там в урле. С id поидее проще будет.
Создание сайтов, шаблонов, помощь в решении проблем.
*

Валерон163

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Re: Проблемы с генерацией меню
« Ответ #15 : 01.02.2017, 15:52:27 »
Вообщем, товарищи, такое дело :)

В силу огромного кол-ва категорий нагрузка нехилая такая на хост идет. Лимиты исчерпываются быстро.
Поэтому отказался вообще от такой реализации.

В качестве решения на форуме нашел доработанный модуль аккордеон для категорий JoomShopping от уважаемого Efanych.
За что ему в карму большущий плюс (да еще и в личной переписке по этому поводу он мне помогал).

Нагрузка снизилась в разы.
Спасибо всем огромное за ответы. :D
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Пункт меню продавец в JoomShopping

Автор nash17

Ответов: 8
Просмотров: 4332
Последний ответ 08.08.2023, 22:23:07
от Rinat abzyi
Убрать родительский пункт меню для ссылок юзеров(мои заказы, мои данные и т.д.)

Автор Dolphin4ik_1

Ответов: 3
Просмотров: 647
Последний ответ 07.12.2021, 16:40:47
от draff
Количество товара в корзине в мега-меню [решено]

Автор jesus

Ответов: 13
Просмотров: 2069
Последний ответ 08.10.2021, 21:42:27
от Mister Shadow
Как создать категорию JoomShopping в отдельном пункте меню?

Автор Ponu4

Ответов: 5
Просмотров: 1263
Последний ответ 11.03.2021, 08:28:18
от nevigen
Проблемы с регистрацией и авторизацией

Автор Lemonez

Ответов: 3
Просмотров: 548
Последний ответ 01.12.2020, 01:43:14
от gartes