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

ma1exe

  • Новичок
  • 9
  • 0 / 0
День добрый. Ситуация такая.

Есть прайс-лист с ценами на товар с некоторыми категориями, в которых цены сформированы абсолютно рандомным образом. Цену на товар определить можно только по конкретной ячейке. Вот кусок таблицы: 1)
 , 2) . В JoomShopping с помощью атрибутов установить цену стандартным образом не получится. До чего додумался я: для отдельных категорий товара с помощью php-кода вызывать ячейку таблицы. Вопрос: правильный путь ли я избрал или есть решения проще? И если правильный, то как это правильно реализовать? И ведь потом придется как-то передать это значение в корзину.

 Не прошу готовых решений или кода, просто, знающие люди, подскажите, в какую сторону копать, какие факи/доки смотреть, чтобы сэкономить время. Пока ничего не нашел, к сожалению. Спасибо.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Установить свою цену товара
« Ответ #1 : 13.07.2017, 18:03:12 »
Цитировать
В JoomShopping с помощью атрибутов установить цену стандартным образом не получится.
по каким причинам?

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

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Установить свою цену товара
« Ответ #2 : 13.07.2017, 18:03:36 »
Насколько я понял... Копать сюда - Free Attribute calculate price (Addon)
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

ma1exe

  • Новичок
  • 9
  • 0 / 0
Re: Установить свою цену товара
« Ответ #3 : 13.07.2017, 18:07:48 »
по каким причинам?
потому что цены в таблице расставлены случайно, нет никакой формулы по типу высота*ширина=цена, нет, абсолютно случайные цены
Насколько я понял... Копать сюда - Free Attribute calculate price (Addon)
не подходит, так как формулы просто нет
Upd: возможно, подходит, посмотрю внимательнее
*

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Установить свою цену товара
« Ответ #4 : 13.07.2017, 18:11:11 »
Если что-то нельзя рассчитать, то только к волшебнику или к магу.  ;) Откуда то цена должна браться, тут только генератор случайных чисел подойдет
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Установить свою цену товара
« Ответ #5 : 13.07.2017, 18:14:43 »
Ну или сочетаниями атрибутов... формировать цену - атр5 + атр3 = цена 4503
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Установить свою цену товара
« Ответ #6 : 13.07.2017, 18:18:27 »
Покажите что получилось сделать.
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

ma1exe

  • Новичок
  • 9
  • 0 / 0
Re: Установить свою цену товара
« Ответ #7 : 13.07.2017, 18:21:14 »
Насколько я понял... Копать сюда - Free Attribute calculate price (Addon)
В общем, да, это примерно то, что нужно. Но аддон платный, а мне нужно бесплатное решение. Попробую по-другому сформулировать вопрос: как сделать цену на товар, в зависимости от атрибутов, причем атрибуты могут как зависеть друг от друга, так и нет? Например, при ширине от 1 до 5 И высоте от 2 до 3 -- цена считается по формуле 1, при ширине от 6 до 7 И высоте от 3 до 4 -- цена считается по формуле 2.
*

ma1exe

  • Новичок
  • 9
  • 0 / 0
Re: Установить свою цену товара
« Ответ #8 : 13.07.2017, 18:22:27 »
Покажите что получилось сделать.
пока только решение с помощью ячеек, но оно в голове, потому что решил сначала узнать, есть ли более изящные методы в JS)
*

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Установить свою цену товара
« Ответ #9 : 13.07.2017, 18:24:43 »
Готовых решений нет даже платных. Только писать. Бесплатно - если напишите сами.
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Установить свою цену товара
« Ответ #10 : 13.07.2017, 18:25:25 »
Сайт покажите, много слов. Проще раз глянуть.
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

ma1exe

  • Новичок
  • 9
  • 0 / 0
Re: Установить свою цену товара
« Ответ #11 : 13.07.2017, 18:29:02 »
Сайт покажите, много слов. Проще раз глянуть.
вот сайт: http://fototextile24.ru/index.php/joomshopping
вот таблица: https://yadi.sk/i/uo12Ffb23L34z6, нужно заполнить листы со шторами
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Установить свою цену товара
« Ответ #12 : 13.07.2017, 18:31:31 »
потому что цены в таблице расставлены случайно, нет никакой формулы по типу высота*ширина=цена, нет, абсолютно случайные ценыне подходит, так как формулы просто нет
и что? так и создаете атрибуты, и назначайте цены. какая атрибуту вообще разница, как цена сформирована - случайно или по какой то формуле? никакой нет разницы. зависимые атрибуты - и назначайте связке цену
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Установить свою цену товара
« Ответ #13 : 13.07.2017, 18:33:00 »
Да что же вы так варезные шаблоны любите?

Спойлер
[свернуть]
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Установить свою цену товара
« Ответ #14 : 13.07.2017, 18:37:23 »
В вашем случае только так: 1.5х1 (название независимого атрибута) 3161 (цена этого атрибута) и т.д.
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Установить свою цену товара
« Ответ #15 : 13.07.2017, 18:39:09 »
Да что же вы так варезные шаблоны любите?

А потому что хочется бесплатно денег заработать, минимум вложений.
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

ma1exe

  • Новичок
  • 9
  • 0 / 0
Re: Установить свою цену товара
« Ответ #16 : 13.07.2017, 18:41:48 »
В вашем случае только так: 1.5х1 (название независимого атрибута) 3161 (цена этого атрибута) и т.д.
спасибо
Да что же вы так варезные шаблоны любите?

Спойлер
[свернуть]
а откуда этот код?
*

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Установить свою цену товара
« Ответ #17 : 13.07.2017, 18:42:45 »
Из тела вашего шаблона
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Установить свою цену товара
« Ответ #18 : 13.07.2017, 18:49:04 »
А потому что хочется бесплатно денег заработать, минимум вложений.

Есть бесплатные шаблоны, Vina_fashion, например, со встроенным ЖШ, очень даже ничего шаблончик, приличный дизайн:
http://joomla.vinagecko.com/templates/?template=vina_fashion
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
Re: Установить свою цену товара
« Ответ #19 : 13.07.2017, 18:52:00 »
спасибоа откуда этот код?
:) вот нехорошие люди его туда добаивли :)
робин гуда обидели... он отобрал у "богатых" а оказалось что оно бракованное..
надо отнести отдать и езще наругать ! :)

В общем, да, это примерно то, что нужно. Но аддон платный, а мне нужно бесплатное решение.
вот источник всех проблем... он всегда внутри а мы ищем причины в окружающих.
понятие бесплатно это вообще глупость априори :)
то что вы будете делать сами это будут просто ваши затраты, но не бесплатно.

2 Випиуссс
очень даже ничего :) хорошего...
и шаблон 2014 надеюсь там ЖШ свежий :)

по теме.
может легче распарсить на уровне Екселя файл на приемлемый для импорта вид ?
хотя да... импорты атрибутов тоже платные...:( увы...
« Последнее редактирование: 13.07.2017, 18:57:15 от nevigen »
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

ma1exe

  • Новичок
  • 9
  • 0 / 0
Re: Установить свою цену товара
« Ответ #20 : 13.07.2017, 18:56:41 »
:) вот нехорошие люди его туда добаивли :)
робин гуда обидели... он отобрал у "богатых" а оказалось что оно бракованное..
надо отнести отдать и езще наругать ! :)
вот источник всех проблем... он всегда внутри а мы ищем причины в окружающих.
понятие бесплатно это вообще глупость априори :)

2 Випиуссс
очень даже ничего :) хорошего...

по теме.
может легче распарсить на уровне Екселя файл на приемлемый для импорта вид ?
хотя да... импорты атрибутов тоже платные...:( увы...

очень здорово, что у вас развито чувство иронии, но 1) нет таких средств у меня, дай бог, чтоб они были у вас, 2) хочется самому освоить ремесло программирования

спасибо всем, пойду читать доки, понял, в какую сторону копать
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Установить свою цену товара
« Ответ #21 : 13.07.2017, 19:01:01 »
2 nevigen, конечно не свежий  ^-^
Обновлять всё надо, рихтовать, обучаться, как выше ТС написал итого свой вывод.

Зато бесплатен, дизайн, вплоть до модулей и карточки более-менее, не варез и не вшиты каки-бяки разные ;)
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Установить свою цену товара
« Ответ #22 : 13.07.2017, 19:05:36 »
понятие бесплатно это вообще глупость априори :)
ну почему? :) Joomla же бесплатна :) бесплатное есть, и иногда даже очень неплохое. просто надо понять, что бесплатное и варез - это 2 огромные разницы.

очень здорово, что у вас развито чувство иронии, но 1) нет таких средств у меня, дай бог, чтоб они были у вас, 2) хочется самому освоить ремесло программирования
тут замкнутый круг, увы. по моему опыту к сожалению без первого невозможно второе, а без второго - первое. если нет денег, то что будете кушать, пока будете осваивать ремесло? а заметьте это не часы и не дни, это смело несколько лет. да еще и дано не всем, и не факт что через пару лет вы не поймете, что это не ваше. я не отговариваю, не подумайте. просто часто люди не понимают, что программирование ничем не отличается от любой другой профессии в плане обучения. им кажется, что тут 2 тут 3 - и все готово. а на самом деле все гораздо сложнее.

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

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
Re: Установить свою цену товара
« Ответ #23 : 13.07.2017, 19:08:07 »
ну почему? :) Joomla же бесплатна :) бесплатное есть, и иногда даже очень неплохое. просто надо понять, что бесплатное и варез - это 2 огромные разницы.
если мы за нее не заплатили на старте это не значит что этого не сделали дургие ;) и когда нибудь придет наш черед заплатить :)
Жумла это по сути отсрочка платежа :)

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

ma1exe

  • Новичок
  • 9
  • 0 / 0
Re: Установить свою цену товара
« Ответ #24 : 13.07.2017, 19:12:57 »
тут замкнутый круг, увы. по моему опыту к сожалению без первого невозможно второе, а без второго - первое. если нет денег, то что будете кушать, пока будете осваивать ремесло? а заметьте это не часы и не дни, это смело несколько лет. да еще и дано не всем, и не факт что через пару лет вы не поймете, что это не ваше. я не отговариваю, не подумайте. просто часто люди не понимают, что программирование ничем не отличается от любой другой профессии в плане обучения. им кажется, что тут 2 тут 3 - и все готово. а на самом деле все гораздо сложнее.

по теме топика - мое мнение прежнее: самый простой способ - это атрибуты. зависимые, судя по всему. все остальные решения будут гораздо сложнее.
да вообще нет никаких иллюзий, решение осознанное, зревшее давно)
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
Re: Установить свою цену товара
« Ответ #25 : 13.07.2017, 19:14:13 »
да вообще нет никаких иллюзий, решение осознанное, зревшее давно)
вот за это ++
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Установить свою цену товара
« Ответ #26 : 13.07.2017, 19:15:06 »
Молодец  :D
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

ma1exe

  • Новичок
  • 9
  • 0 / 0
Re: Установить свою цену товара
« Ответ #27 : 15.07.2017, 00:18:44 »
В общем, для тех, кто также будет искать, как добавить товару с взаимосвязанными/несколькими атрибутами цену. Курите зависимые атрибуты. Оказалось, что с помощью них реализуется такой функционал, а я-дурак начал велосипеды изобретать. Всем все равно спасибо за ответы. Тему можно закрывать. =)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Уведомление о превышении доступного количества товара

Автор goga_pgasovav

Ответов: 1
Просмотров: 842
Последний ответ 03.02.2025, 18:48:10
от kit2m2
Артикул или код товара?

Автор goga_pgasovav

Ответов: 3
Просмотров: 1089
Последний ответ 28.11.2024, 19:03:59
от goga_pgasovav
Странная задача: получить псевдоним товара по его ID в шаблоне статьи

Автор goga_pgasovav

Ответов: 4
Просмотров: 1546
Последний ответ 04.07.2024, 13:06:45
от goga_pgasovav
Ошибка при изменении статуса товара

Автор itbc

Ответов: 4
Просмотров: 1346
Последний ответ 08.05.2024, 10:31:16
от itbc
Медленно загружается карточка товара

Автор svarg

Ответов: 7
Просмотров: 1502
Последний ответ 10.07.2023, 16:14:36
от svarg