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

Илья55

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Добрый день
Подскажите пожалуйста существует ли что то подобное или как можно это реализовать стандартными средствами JoomShopping:

имеется интернет-магазин футболок с рисунками. все футболки делаются под заказ(на футболку наносится рисунок).

имеется склад сырья чистых футболок физический. (то есть сколько белых футболок каждого размера есть в наличии(сейчас склад в Экселе)
ну и то что продается на сайте называется склад товаров. но по факту товаров нет, все товары изготавливаются под заказ.

возможно ли как то учитывать склад сырья? чтобы на любую футболку белого цвета размера М действовало общее ограничение?(то сколько чистых футболок есть физически белого цвета размера М)

если у нас физически есть только 3 белые футболки М, то мы можем продать не более трех белых футболок М с различными рисунками.

как реализовать теоретически вообщем то понятно, интересует готовое решение.

надеюсь понятно объяснил :)


может кто то готов реализовать такое решение?
*

dmitry_stas

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

Илья55

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
с футболками ясно - это товар. а что такое "рисунки" в контексте интернет-магазина? или вы хотите сделать рисунок товаром?

нет. товар это Футболка с рисунком. 
есть материал из которого этот товар производится. (это сама футболка + пленка(краска))
вот я хочу учитывать как раз кол-во футболок (материалов)
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
товар это Футболка с рисунком. 

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

Илья55

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
ну мысль то понятна. но так сделать не получится. либо тяжело. можно попробовать товар - футболка, а изображения - независимые атрибуты. тогда у футболки будет количество, а выбор рисунка покупатель будет выбирать из опций атрибутов.
но тогда товаров будет всего ничего. то есть сколько "чистых" футболок, столько и товаров.

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

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Если
но по факту товаров нет, все товары изготавливаются под заказ.
, то зачем вам нужен
склад товаров
?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
вариант реализации может быть такой

ну можно и такой, но такого нет, надо делать

Если, то зачем вам нужен?

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

Илья55

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
dmitry_stas  а вообще по умолчанию как склад устроен?
когда товар купили он резервируется или сразу списывается с остатков?

вы не вкурсе?

и можете подсказать таблицы, которые отвечают за остатки товара.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
а вообще по умолчанию как склад устроен?
когда товар купили он резервируется или сразу списывается с остатков?

такого понятия, как резервирование, нет. есть определенные статусы заказа, при которых списывается количество товара.

и можете подсказать таблицы, которые отвечают за остатки товара.

для самого товара - таблица `#__jshopping_products` столбец `product_quantity`, для зависимых атрибутов - таблица `#__jshopping_products_attr` столбец `count`
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Илья55

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
такого понятия, как резервирование, нет. есть определенные статусы заказа, при которых списывается количество товара.

для самого товара - таблица `#__jshopping_products` столбец `product_quantity`, для зависимых атрибутов - таблица `#__jshopping_products_attr` столбец `count`

спасибо. будем пилить значит)
*

Илья55

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
я правильно понимаю, что если у товара есть зависимые атрибуты, то кол-во в таблице __jshopping_products  не имеет значения? или оно при продаже тоже учитывается как то?
и если учитывается то там по идее должна быть сумма всех атрибутов.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
если учитывается то там по идее должна быть сумма всех атрибутов.

так и есть. изменение количества тут: \components\com_jshopping\tables\order.php function changeProductQTYinStock
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Обмен данными JoomShopping Mикроинвест Склад

Автор Kokshetau

Ответов: 3
Просмотров: 859
Последний ответ 25.03.2021, 22:00:19
от ProtectYourSite
Подружить JoomShopping и "Мой склад"

Автор MiksRUS

Ответов: 21
Просмотров: 6592
Последний ответ 11.11.2019, 14:09:19
от dron
Есть кто то у кого есть опыт работы с Мой склад?

Автор stardel

Ответов: 5
Просмотров: 842
Последний ответ 09.04.2018, 22:10:15
от stardel
Изображения материалов в карточке товара

Автор eugenex

Ответов: 7
Просмотров: 963
Последний ответ 12.06.2015, 22:54:07
от eugenex
Ссылки на товар в тексте материалов (статей)

Автор Отдел Продаж

Ответов: 6
Просмотров: 3981
Последний ответ 02.08.2013, 09:46:46
от nevigen