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

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
При добавлении товара в корзину все норм, но, если попробовать удалить товар - после нажатия на запрос подтверждения ничего не происходит. Если же после этого обновить страницу - товар исчезает.

Кеширование в Joomla отключено.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

dmitry_stas

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

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Да я понимаю, что похоже на кеширование, но где?

Добавляется, кстати, без проблем - без обновления страницы. Только удаляется проблемно.

Спойлер
[свернуть]
« Последнее редактирование: 20.08.2015, 13:29:23 от Taatshi »
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
php_flag session.auto_start On  спас отца ой, мать русской демократии  ^-^
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

dmitry_stas

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

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Дык... иначе не работает  >:(

Мне кажется, что-то не то опять в последней версии JoomShopping - где-то, может, накосячено? Или в последней Joomla.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Лен, не оно это... кэш какой то... у меня удалять и изменять количество в корзине стало норм, но по прежнему не добавляет без перезагрузки. и дальше - если вернутся или перейти из корзины в товар - в модуле корзины старое значение будет (причем тут даже F5 не помогает, только Ctrl+F5, т.е. со сбросом кэша).

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

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Last Modified есть точно. Сейчас я его прибью и посмотрю что получится.


UPD

yes!  Поставила в плагине "Только для ботов" и убрала автостарт для сессии - вроде все работает.

Никогда бы не подумала на этот плагин - мне казалось, он тупо отдает заголовки и к кешу никакого отношения не имеет  ^-^

Хотя понятно же - если браузер получил сигнал, что ничего не изменилось - грузит страницу из кеша. Можно было в принципе допереть  crazy!
« Последнее редактирование: 20.08.2015, 20:30:12 от Taatshi »
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

okean

  • Новичок
  • 6
  • 0 / 0
Ребята, я прошу прощения, можно пожалуйста подробнее, как бороться с корзиной?
Снимаю с публикации плагин (система-кэш) - все работает нормально, публикую - в корзине капец чего твориться.
Скажите что делать нужно, без кэша тоже не могу, большой ответ сервера получается.
Помогите.
*

dmitry_stas

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

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
okean, а в самом модуле корзины разве нет настройки кеширования? Посмотрите. Если нет - ее в принципе недолго и дописать. Во всех стандартных модулях есть - в файле названиемодуля.xml подглядеть можно.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

dmitry_stas

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

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

okean

  • Новичок
  • 6
  • 0 / 0
Taatshi
вот как на зло,  во всех модулях есть (отключить кэширование), а вот именно в корзине такого нет.
Меня конечно поражают разработчики... Это тоже самое что сделать машину, но у нее нет тормозов...
*

nevigen

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

okean

  • Новичок
  • 6
  • 0 / 0
ясно, похоже никто мне не поможет.
Спасибо что хоть что-то ответили.
*

dmitry_stas

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

sanya

  • Новичок
  • 8
  • 0 / 0
 ;)Решение вопроса с кешированием корзины и других элементов joomshop в Joomla 3. Заходим в менеджер плагинов, система кеш и добавляем пункт меню который нужно исключить из кеширования (например - товары), потом во вкладке дополнительные параметры этого плагина исключаем из кеширования определенный URL или пишем правило с указанием всех мест где есть корзина. Очищаем общий системный кеш Joomla, потом кеш браузера и  ВСЕ! Теперь корзина работает как и должна работать.
Да, если просто отключить в этом плагине "кеширование в браузере" всего сайта в целом - будет огромная нагрузка на сервер!
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
исключаем из кеширования определенный URL или пишем правило с указанием всех мест где есть корзина

т.е исключаем все страницы :) ибо в нормальном интернет магазине корзина должна быть везде

если просто отключить в этом плагине "кеширование в браузере" всего сайта в целом - будет огромная нагрузка на сервер!

ага. примерно вот такая:



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

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Так. Димон, ты попал.  ;D   Колись про правильную настройку JoomShopping - кроме плагина, который уже упомянут был..
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

dmitry_stas

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

Атрибуты полей при оформлении заказа в JoomShopping

Автор goga_pgasovav

Ответов: 1
Просмотров: 633
Последний ответ 12.08.2025, 11:21:29
от kit2m2
Товар - файл. Как ограничить добавление в корзину только 1 шт?

Автор SLV

Ответов: 15
Просмотров: 2364
Последний ответ 24.07.2025, 11:34:21
от SLV
WT JShopping Cart - модуль Bootstrap 5 корзины для JoomShopping 5 и Joomla 4

Автор sergeytolkachyov

Ответов: 7
Просмотров: 4331
Последний ответ 15.12.2024, 09:34:09
от kit2m2
JoomShopping, вывод всех категории к которым принадлежит товар

Автор Valent777

Ответов: 12
Просмотров: 2474
Последний ответ 01.11.2024, 14:57:28
от kit2m2
Про статусы заказа: как перевести и когда они меняются?

Автор Maxum

Ответов: 18
Просмотров: 10160
Последний ответ 18.10.2024, 10:45:13
от nevigen