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

Kadimp

  • Захожу иногда
  • 180
  • 2 / 0
Пропал товар в админке
« : 21.09.2018, 12:43:22 »
При добавлении нового товара три товара не отображаются в админке, хотя на сайте есть. Товар в админке по id: 1982 а потом сразу 1983
Залил под этими id полностью другие товары из других категорий - ситуация та же.
В чём может быть проблема?
*

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Пропал товар в админке
« Ответ #1 : 21.09.2018, 15:49:09 »
... Товар в админке по id: 1982 а потом сразу 1983
Что не так? Все правильно - по порядку...
...Залил под этими id полностью другие товары из других категорий - ситуация та же.
В чём может быть проблема?
ID - это системное поле. Мы (пользователи форума) не в понятках, как и чем Вы эти товары заливали... Вы хотя бы скрины прикладывали и подробнее описывали если ждете помощи, а не ответ: "В чём может быть проблема?" - "Без понятия... кто ж его знает..."
« Последнее редактирование: 21.09.2018, 15:53:46 от kit2m2 »
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
Re: Пропал товар в админке
« Ответ #2 : 21.09.2018, 16:22:27 »
сортировка хоть задана по ид ? :)
уверены что товара нет ? может вы его просто не видите ? :)
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

dmitry_stas

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

Kadimp

  • Захожу иногда
  • 180
  • 2 / 0
Re: Пропал товар в админке
« Ответ #4 : 21.09.2018, 20:27:33 »
Неправильно написал: в админке при сортировке товаров по id после товара 1982 идет сразу 1986
Через поисковик в админке я его не нахожу, хотя на сайте он есть и его можно заказать. Но даже через заказ товара я захожу в карточку этого товара для редактирования, а там только поле - фото и всё!
*

Kadimp

  • Захожу иногда
  • 180
  • 2 / 0
Re: Пропал товар в админке
« Ответ #5 : 21.09.2018, 20:40:23 »



*

dmitry_stas

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

Kadimp

  • Захожу иногда
  • 180
  • 2 / 0
Re: Пропал товар в админке
« Ответ #7 : 21.09.2018, 20:56:28 »
Откуда тут атрибуты, когда я перехожу из заказа по ссылке слева снизу:
*

Kadimp

  • Захожу иногда
  • 180
  • 2 / 0
Re: Пропал товар в админке
« Ответ #8 : 21.09.2018, 20:59:16 »
И на скринах сверху видно, что по артикулу товар на сайте находит а в админке нет!
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Пропал товар в админке
« Ответ #9 : 21.09.2018, 21:02:09 »
а это я так думаю виноваты уже ваши манипуляции с id товара. вы что то делали с базой напрямую? прямой массаж базы данных ни к чему хорошему не приводит.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Kadimp

  • Захожу иногда
  • 180
  • 2 / 0
Re: Пропал товар в админке
« Ответ #10 : 21.09.2018, 21:05:55 »
Даже не представляю как это влезть в базу данных)
*

dmitry_stas

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

Kadimp

  • Захожу иногда
  • 180
  • 2 / 0
Re: Пропал товар в админке
« Ответ #12 : 21.09.2018, 21:21:12 »
Через импорт всегда заливаю. Причем прошлый товар под этими проблемными id где-то год висел на сайте, а потом в карточке товара осталось только краткой описание, фото, название и даже URL пропал
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Пропал товар в админке
« Ответ #13 : 21.09.2018, 21:29:29 »
ну что вам сказать? :) смотрите в базе, таблица #__jshopping_products, в частности смотрите для этого id чему равен столбец parent_product_id
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Kadimp

  • Захожу иногда
  • 180
  • 2 / 0
Re: Пропал товар в админке
« Ответ #14 : 21.09.2018, 21:32:37 »
А как в эту базу попасть?
*

Kadimp

  • Захожу иногда
  • 180
  • 2 / 0
Re: Пропал товар в админке
« Ответ #15 : 21.09.2018, 21:41:46 »
Нашел. Действительно на против всех id стоят нули, а на против этих 1486,1486 и 1494 соответственно!. Что нужно сейчас мне сделать?
*

Kadimp

  • Захожу иногда
  • 180
  • 2 / 0
Re: Пропал товар в админке
« Ответ #16 : 21.09.2018, 21:53:31 »
Спасибо огромное, ПОЛУЧИЛОСЬ!
*

dmitry_stas

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

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Пропал товар в админке
« Ответ #18 : 22.09.2018, 10:39:55 »
ну теперь осталось разобраться, как же они там оказались, и проблема решена :)

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

Не сохраняется порядок товаров в админке

Автор heartlink

Ответов: 7
Просмотров: 1892
Последний ответ 08.10.2024, 10:24:02
от kit2m2
Ограничение Order number в админке?

Автор ИммоБокс

Ответов: 2
Просмотров: 1224
Последний ответ 13.03.2024, 11:26:33
от ИммоБокс
Артикул товара в админке

Автор PrimitiveFish

Ответов: 11
Просмотров: 735
Последний ответ 18.04.2021, 13:18:30
от kit2m2
Обрезает код товар по длине

Автор misteri27

Ответов: 2
Просмотров: 638
Последний ответ 05.04.2021, 12:22:21
от misteri27
Порядок атрибутов в товаре в админке

Автор dmitry_stas

Ответов: 17
Просмотров: 1563
Последний ответ 27.10.2020, 01:17:08
от lamdv