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

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #60 : 20.08.2014, 16:30:05 »
robert
да, спасибо! то что надо :)
*

dmitry_stas

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

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #62 : 22.08.2014, 11:21:39 »
в меню JoomShopping, которое не submenu текстовыми вкладками, а с картинками, хотел добавить один пункт, куда бы вынес все свои новые настройки. в submenu создал, все хорошо, а где находится файл, отвечающий за меню с картинками не смог найти.
создается функцией displayConfigPanelIco(); как я понял, но где она находится??
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Переменные JoomShopping
« Ответ #63 : 22.08.2014, 12:07:33 »
по правилам форума один вопрос - одна тема
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #64 : 25.08.2014, 08:46:33 »
как обратиться к переменной с тире в названии?
param-1 к примеру. Joomla видит как param минус 1. пробовал и кавычки, и через другую переменную, типа $param='param-1'; - безрезультатно...
*

Linfuby

  • Завсегдатай
  • 1242
  • 176 / 0
  • Всё просто...
Re: Переменные JoomShopping
« Ответ #65 : 25.08.2014, 09:34:40 »
Не используйте тире.
Либо в БД выборку делать так: `param-1` as param1
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Переменные JoomShopping
« Ответ #66 : 25.08.2014, 09:44:04 »
$param1 = 'param-1';
echo $obj->$param1;
echo $obj->{'param-1'};
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #67 : 25.08.2014, 16:58:24 »
с переменной почему-то не работает, а с {} то что надо, спасибо)

и еще вопрос:
на одной странице есть две разные формы, с разными id и name.
и две кнопки отправки данных, по одной на форму.
но на какую бы кнопку не жал, передаются данные из первой формы все время... В чем может быть причина?
« Последнее редактирование: 25.08.2014, 17:02:59 от ShutTap »
*

dmitry_stas

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

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #69 : 26.08.2014, 08:02:16 »
Думал, что это относится к переменным) Ок :)
« Последнее редактирование: 26.08.2014, 08:15:43 от ShutTap »
*

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #70 : 09.09.2014, 09:58:40 »
Здравствуйте. Возник еще вопрос: в default_config.php в переменных $config или JSFactory::getConfig() содержатся не все настройки, в том числе и нужные мне. Как их получить? Там есть название переменной (настройки), но нет ее значения....
*

dmitry_stas

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

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #72 : 09.09.2014, 10:30:16 »
как же быть?
*

dmitry_stas

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

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #74 : 09.09.2014, 10:49:19 »
это опять для сортировки по extra_field... хотел, чтобы из настроек можно было выбирать, какие поля отображать. а настройки недоступны.
Как можно тогда сделать?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Переменные JoomShopping
« Ответ #75 : 09.09.2014, 11:19:14 »
например, плагином, который поймает событие onLoadJshopConfig. либо в самом файле \components\com_jshopping\lib\factory.php в конце функции getConfig после определения всех настроек.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #76 : 09.09.2014, 12:19:36 »
в самом файле лучше... не совсем понимаю, что там надо написать - свою функцию, которая получает необходимые значения и потом обращаться к ней?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Переменные JoomShopping
« Ответ #77 : 09.09.2014, 12:39:56 »
в самом файле лучше
в самом файле не лучше, а проще :) и то, проще до тех пор, пока не настанет время обновлять компонент

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

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #78 : 12.11.2014, 16:57:31 »
Здравствуйте.
В меню можно выбрать тип "Joomshopping -> Товары".
Тогда в настройках отображения будет выпадающий список с тем, какие товары выводить (все, последние, случайные, популярные и т.д.).
Не подскажите, где находится файл, отвечающий за этот список? Хочу добавить два своих типа...
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Переменные JoomShopping
« Ответ #79 : 12.11.2014, 17:14:29 »
а вы понимаете, что просто добавить для выбора - это 5% от итого что нужно сделать?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #80 : 13.11.2014, 08:11:39 »
понимаю. контроллеры и шаблоны вывода готовы, просто сейчас стоят вместо нескольких родных пунктов. Хочется сделать нормально и вынести в отдельные
*

Linfuby

  • Завсегдатай
  • 1242
  • 176 / 0
  • Всё просто...
Re: Переменные JoomShopping
« Ответ #81 : 13.11.2014, 09:32:54 »
В версиях 3.19+ в файле components\com_jshopping\views\products\tmpl\default.xml
В версиях ниже - components\com_jshopping\metadata.xml
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054
*

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #82 : 13.11.2014, 09:48:34 »
Версия 4.6.0, что-то нету такого...
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Переменные JoomShopping
« Ответ #83 : 13.11.2014, 11:48:19 »
чего нету? файла components\com_jshopping\metadata.xml ?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #84 : 13.11.2014, 12:12:16 »
А, да, есть, даже не смотрел, видимо не так понял фразу, что это для ниже 3.19, а у меня 4.6.0
Спасибо) работает как надо
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Переменные JoomShopping
« Ответ #85 : 13.11.2014, 12:40:01 »
для 4-й линейки - с 4.7.0
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #86 : 14.11.2014, 09:06:22 »
а еще такой вопрос, в настройках сайта указаны meta description , но на страницах JoomShopping их нет. так понимаю, если в самой JoomShopping в seo ничего не указано - ничего не выводится? не подскажите, где находится файл с выводом seo, чтобы заменить, если пусто в JoomShopping выводить meta description из настроек самой Joomla ?

нашел (tables/seo.php)

или это плохо, если на нескольких страницах одинаковые description?
« Последнее редактирование: 14.11.2014, 10:03:50 от ShutTap »
*

dmitry_stas

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

ShutTap

  • Захожу иногда
  • 131
  • 0 / 0
Re: Переменные JoomShopping
« Ответ #88 : 19.11.2014, 09:37:01 »
Здравствуйте.
Очередной вопрос.
В Joomla установлен JCE редактор, пользуюсь его всплывающими подсказками.
Как и что подключить в JoomShopping, чтобы там работали эти же всплывающие подсказки?
Делаю вывод всех связанных атрибутов товара как отдельных товаров, в виде "картинка:описание". хочу выводить название свойства во всплывающей подсказке, чтоб компактнее было...
типа 213 x 249 - наводишь курсор - всплывает "размеры"
сейчас, если просто написать класс и data-title="текст", то всплывает подпись, но без текста
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Переменные JoomShopping
« Ответ #89 : 19.11.2014, 11:29:30 »
я понял :) это просто ваша личная тема, да? :)

http://joomlaforum.ru/index.php/topic,299073.msg1486403.html#msg1486403
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

WT JoomShopping Favorite - кнопки избранного в категории товаров и карточке тов

Автор sergeytolkachyov

Ответов: 25
Просмотров: 35705
Последний ответ 23.09.2025, 11:22:23
от Alex_gs
Атрибуты полей при оформлении заказа в JoomShopping

Автор goga_pgasovav

Ответов: 1
Просмотров: 624
Последний ответ 12.08.2025, 11:21:29
от kit2m2
Конфликт js шаблонов JoomShaper helix3 J5 с JoomShopping 5

Автор heartlink

Ответов: 6
Просмотров: 1400
Последний ответ 22.07.2025, 12:40:12
от heartlink
Модуль карусели товаров JoomShopping на Swiper.js для Joomla

Автор sergeytolkachyov

Ответов: 2
Просмотров: 2045
Последний ответ 04.07.2025, 10:30:36
от sergeytolkachyov
[Решено] Сбросить счётчик ID товаров JoomShopping

Автор goga_pgasovav

Ответов: 3
Просмотров: 1355
Последний ответ 13.02.2025, 00:11:20
от goga_pgasovav