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

goga_pgasovav

  • Захожу иногда
  • 444
  • 6 / 0
  • Внимательный джумловод
Всем привет!
Очередная безумная задача встала передо мной.
Вобщем может кто подскажет решение для следующего:
необходимо реализовать добавление/удаление набора полей + хранение данных этих полей
что-то вроде этого:



Т.е. при каждом клике добавляется несколько полей (это с помощью JS, разумеется), и всё это сохраняется в БД.

Заранее всёх благодарю за ответы!
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Не будь паразитом, сделай что-нибудь самостоятельно!
*

goga_pgasovav

  • Захожу иногда
  • 444
  • 6 / 0
  • Внимательный джумловод
robert, спасибо!
С JS частью я могу справиться вприцнипе, а вот что касается всего остального, то знаний мне точно не хватит!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не выводится модуль в материале {loadposition acc1}

Автор InFighter

Ответов: 15
Просмотров: 14817
Последний ответ 02.07.2018, 10:04:42
от Юльчик
Превью видео в материале, как уменьшить размер?

Автор nqui

Ответов: 3
Просмотров: 1524
Последний ответ 08.03.2018, 23:14:00
от nqui
Как удалить ненужные поля при регистрации?

Автор petya242

Ответов: 2
Просмотров: 3887
Последний ответ 09.11.2017, 12:58:09
от abonnent
Дополнительные описание категории

Автор abadrozadub

Ответов: 0
Просмотров: 1086
Последний ответ 04.04.2016, 21:38:43
от abadrozadub
Как к Категории вывести дополнительные поля?

Автор biosila9991

Ответов: 0
Просмотров: 1016
Последний ответ 01.04.2016, 16:59:26
от biosila9991