Новости Joomla

Новый способ добавления и рендера полей в Joomla Form - метод renderControlFields() (Joomla 5.3+)

Новый способ добавления и рендера полей в Joomla Form - метод renderControlFields() (Joomla 5.3+)

При отображении форм компонента в админке раньше разработчикам нужно было описывать скрытые поля в лейаутах. И выглядело это так:

<?php // Это файл в /layouts/components/com_component/your_layout.php ?> <input type="hidden" name="task" value=""> <input type="hidden" name="return" value="<?php echo $input->getBase64('return'); ?>"> <input type="hidden" name="forcedLanguage" value="<?php echo $input->get('forcedLanguage', '', 'cmd'); ?>"> <?php echo HTMLHelper::_('form.token'); ?>

Начиная с Joomla 5.3 добавлен новый способ добавления таких полей (их называют control fields) - программно. И теперь это можно сделать просто в Controller / View.

<?php // В Controller/View добавляем поля $this->form ->addControlField('task', '') ->addControlField('return', $input->getBase64('return', '')) ->addControlField('forcedLanguage', $forcedLanguage);

А в layout'е просто используем метод

renderControlFields()

<?php // В layout формы echo $this->form->renderControlFields();

Многие компоненты ядра уже используют этот подход. Соответствующий PR был принят в Joomla 5.3 осенью 2024г.

Смотреть Pull Request

0 Пользователей и 1 Гость просматривают эту тему.
  • 4 Ответов
  • 854 Просмотров
*

sashahz

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Здравствуйте, имеется плагин скидки https://argens.ru/rasshireniya-dlya-joomshopping/75-addon-price-time, ещё на сайте имеются группы покупателей которым предоставляется скидка на все товары, вот в чем проблема, когда предоставляю скидку через плагин, оба скидки суммируются, и конечная цена получается некорректной, как сделать так, чтобы они не суммировались? Искал где идет подсчёт групповой скидки, так и не нашёл  *ОХ-Х-Х*, подскажите пожалуйста как быть?
*

kit2m2

  • Живу я здесь
  • 3354
  • 274 / 0
  • Беру сайты на полное сопровождение
Конечно, лучше задать этот вопрос разработчику расширения... А так нужно добавить в аддон нужное условие.

Только возникает тогда вопросы:

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

kit2m2

  • Живу я здесь
  • 3354
  • 274 / 0
  • Беру сайты на полное сопровождение
Разработчик расширения - @Arkadiy
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

sashahz

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Конечно, лучше задать этот вопрос разработчику расширения... А так нужно добавить в аддон нужное условие.

Только возникает тогда вопросы:

1. Скидки должны не суммироваться, а применяться одна за другой?
2. Одна из скидок не должна применяться? Исключать одна другую? Тогда какую?

Должна применяться скидка, которая даётся аддоном, исключая скидку которая дается группе.
*

sashahz

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Разработчик расширения - @Arkadiy

Спасибо, попробую пообщаться.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вместо названия товара - код названия товара, span и т.п

Автор Besa

Ответов: 1
Просмотров: 2097
Последний ответ 10.03.2023, 12:57:59
от kit2m2
Кастомные поля у товара при заказе?

Автор psiworm

Ответов: 2
Просмотров: 2336
Последний ответ 15.02.2022, 01:18:30
от psiworm
Все товары этого продавца (вендора) в карточке товара?

Автор shop-user

Ответов: 5
Просмотров: 2653
Последний ответ 14.05.2021, 14:18:30
от nevigen
Плагин для "скидки от суммы заказа"

Автор Fisk

Ответов: 56
Просмотров: 13640
Последний ответ 16.05.2019, 17:34:46
от Eugene omsk
Проблема с JS Extended Filter 1.4.4

Автор Kostelano

Ответов: 4
Просмотров: 857
Последний ответ 25.03.2019, 19:29:20
от effrit