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

bayersoff

  • Захожу иногда
  • 88
  • 0 / 0
Здравствуйте!

Ребята, задача у меня стоит такая. У меня на сайте таблица выбора тарифного плана из четырех колонок, и под каждой колонкой кнопка «Заказать». Мне нужно, чтобы при нажатии на кнопку «заказать» выходило всплывающее окно регистрации с выбором тарифного плана, или же тот тарифный план, на который нажимаешь. Прошу, подскажите какое расширение можно использовать для этой задачи.
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Надо добавить в форму регистрации скрытое поля которое будет хранить значение выбранного тариф. плана и при нажатии на кнопки менять значение этого поля. Проще простого
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

bayersoff

  • Захожу иногда
  • 88
  • 0 / 0
Спасибо. Попробую
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Спасибо. Попробую
Это можно сделать одном плагином.
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

bayersoff

  • Захожу иногда
  • 88
  • 0 / 0
Каким именно плагином?
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Каким именно плагином?
Не знаю есть ли в природе такой плагин, но я бы сделал сам если бы мне надо было бы такое
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

bayersoff

  • Захожу иногда
  • 88
  • 0 / 0
Надо добавить в форму регистрации скрытое поля которое будет хранить значение выбранного тариф. плана и при нажатии на кнопки менять значение этого поля. Проще простого

Можете подробнее описать, как это сделать?
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Можете подробнее описать, как это сделать?
Имеется страница с таблицей тарифов.
Подключаем js файл для изменения значения скрытого поля в форме регистрации
При отправке формы все эти данные сохраняются в профиле самого пользователя.
С помощью плагина на страницу настроек пользователя (в админке), добавляешь поле или список в котором перечислены сами тарифы и потом уже используешь где надо.

Это не так сложно сделать, если хватит умений!

По сути это не так дорого стоит, 2000р. сделаю плагин.
А вот что бы использовать эти тарифы это уже другая история..
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Модуль расширенных результатов ARI Quiz Results

Автор Beer

Ответов: 0
Просмотров: 751
Последний ответ 03.02.2025, 15:27:35
от Beer
Модуль для отображения курсов валют

Автор Геон

Ответов: 2
Просмотров: 2046
Последний ответ 03.02.2024, 22:19:02
от Геон
Модуль «Image Show gk4», не отображается ни картинка, ни текст

Автор kaasin

Ответов: 1
Просмотров: 3499
Последний ответ 13.05.2023, 15:42:15
от anastasya96
Стандартный модуль случайного изображения не выводит фотографии

Автор strix

Ответов: 8
Просмотров: 8039
Последний ответ 19.10.2022, 16:07:11
от Andrej_777
Модуль тегов Joes Word Cloud для Joomla 3

Автор ecolora

Ответов: 1
Просмотров: 2702
Последний ответ 05.05.2022, 19:04:44
от ecolora