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

777aleksey777

  • Новичок
  • 5
  • 0 / 0
Добрый день.
Просьба помочь разобраться с шаблоном карточки товара в JoomShopping (v 4.14.3).
Опыта исправления кода - ноль. Но все таки посмотрел, что <div> в первой строке части кода замыкается на </div>  в строке (<?php if ($k%(count($this->images)-1)!=count($this->images)-2 && count($this->images) > 4) print "</div>";?>), а должен, как мне кажется в последней строке закрываться. И видимо, из-за этого происходит косяк при начале оформления заказа. Если при первоначальном просмотре все фото товара расположены как и положено (1 фото большое, остальные в виде иконок), то после выбора цвета товара, даже до момента нажатия кнопки "Добавить в корзину" все фото становятся большого размера.
Часть оригинального кода карточки товара product_default.php из шаблона магазина mysite.ru/templates/vina_fashion_ii/html/com_jshopping/product расположена ниже. Ничего в нем не менял.
Если есть возможность, то прошу помочь. Еще только начал изучать Joomla, поэтому опыт пока ничтожный...
Заранее спасибо.

P.S. Если нет ошибки, то извините за ложную тревогу. Однако в нынешнем варианте валидацию кода этот шаблон не проходит...

Спойлер
[свернуть]
*

kit2m2

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

777aleksey777

  • Новичок
  • 5
  • 0 / 0
Re: Ошибка в шаблоне карточки товара
« Ответ #2 : 27.10.2016, 15:21:16 »
Где такой код взяли? Сравните с оригинальным, который идет с JoomShopping - по умолчанию. Когда хотите чтобы помогли, лучше давать ссылку на сайт.

Сайт - http://boatsmart.ru
Вот код карточки продукта из шаблона сайта, расположенная по адресу  www.boatsmart.ru/templates/vina_fashion_ii/html/com_jshopping/product
Спойлер
[свернуть]

А это код карточки продукта из шаблона компонента JoomShopping  - www.boatsmart.ru/components/com_jshopping/templates/default/product
Спойлер
[свернуть]
*

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Ошибка в шаблоне карточки товара
« Ответ #3 : 27.10.2016, 15:31:00 »
Вот здесь ошибка (при выборе аттрибута) у дополнительных фото добавляется класс img class="jshop_img_thumb span1.33333333333", а должно быть img class="jshop_img_thumb span3"
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

777aleksey777

  • Новичок
  • 5
  • 0 / 0
Re: Ошибка в шаблоне карточки товара
« Ответ #4 : 29.10.2016, 12:57:19 »
Вот здесь ошибка (при выборе аттрибута) у дополнительных фото добавляется класс img class="jshop_img_thumb span1.33333333333", а должно быть img class="jshop_img_thumb span3"
Спасибо за ответ. Подскажите где и что надо изменить, что бы убрать ошибку, т.к. опыта в изменении кода - ноль.
Заранее спасибо.
*

dmitry_stas

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

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Ошибка в шаблоне карточки товара
« Ответ #6 : 29.10.2016, 15:01:40 »
не хочу быть "ПЛОХИМ", но...

шаблон Vina фейшен не куплен.
имеет старый вариант.
имеет погрешности в бутстрапе.

Есть иной перечень минусов, который вам врятли будет приятен.
Поэтому Вам Дмитрий верно ответил. Купите и обратитесь в тех.под.

От себя: я удивляюсь всегда папке HTML в темлейте и как Vina переносит часть расширений.
Но он имеет право для квиков.

Ваш коду тут: теплатес/вина/нтмл/сом_джумшоп/
Делайте переопредиления и обновите потом компонент магазина.
« Последнее редактирование: 29.10.2016, 15:10:00 от vipiusss »
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

777aleksey777

  • Новичок
  • 5
  • 0 / 0
Re: Ошибка в шаблоне карточки товара
« Ответ #7 : 29.10.2016, 18:03:33 »
Понял. Спасибо за помощь.
*

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Ошибка в шаблоне карточки товара
« Ответ #8 : 29.10.2016, 18:28:18 »
Чтобы выглядело как было раньше на вашем сайте и чтобы не были картинки большими - достаточно стилей CSS например, добавить к img class="jshop_img_thumb стиль -     width: 30%;
Код
.jshop.productfull #list_product_image_thumb img.jshop_img_thumb {
    width: 30%;
}

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

kit2m2

  • Живу я здесь
  • 3366
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Ошибка в шаблоне карточки товара
« Ответ #9 : 29.10.2016, 18:46:56 »
Кстати у Вас ошибка не только в карточке товара, но и в корзине: Пытаюсь удалить товар из корзины, а он упорно не желает удаляться!

Если скачали шаблон на левом сайте, то может появиться еще одна проблема, в виде взлома сайта.

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

777aleksey777

  • Новичок
  • 5
  • 0 / 0
Re: Ошибка в шаблоне карточки товара
« Ответ #10 : 29.10.2016, 19:11:23 »
Кстати у Вас ошибка не только в карточке товара, но и в корзине: Пытаюсь удалить товар из корзины, а он упорно не желает удаляться!

Если скачали шаблон на левом сайте, то может появиться еще одна проблема, в виде взлома сайта.

Совет: Возьмите любой бесплатный шаблон и переделайте его под свой дизайн или создайте свой шаблон, или купите этот у официального разработчика и не используйте квикстарт...

Спасибо!
Шаблон скачивал с сайта разработчика. Он бесплатный.
*

kit2m2

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

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Ошибка в шаблоне карточки товара
« Ответ #12 : 29.10.2016, 20:55:38 »
Шаблон скачивал с сайта разработчика. Он бесплатный.
ну так напишите же им, почему нет? если в шаблоне ошибка, по идее должны же поправить, хоть и бесплатный.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

WT On fly image handler изображения товара JoomShopping в webp на лету

Автор sergeytolkachyov

Ответов: 13
Просмотров: 4371
Последний ответ 29.01.2025, 20:38:38
от sergeytolkachyov
Видео с Youtube вместо картинки на карточке товара

Автор ksena

Ответов: 35
Просмотров: 10205
Последний ответ 08.10.2024, 04:26:36
от kit2m2
Условие для кол-ва товара больше нуля

Автор kik84

Ответов: 3
Просмотров: 1335
Последний ответ 16.02.2024, 13:33:24
от kit2m2
Ошибка при установке шаблона

Автор jimka

Ответов: 2
Просмотров: 1939
Последний ответ 23.08.2023, 15:22:52
от victorantoniak
Убрать модуль в карточке товара JoomShopping

Автор alexkraym

Ответов: 35
Просмотров: 5774
Последний ответ 21.08.2023, 07:17:53
от delchev