Новости Joomla

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

Новый способ добавления и рендера полей в 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.
// В Controller/View добавляем поля$this->form  ->addControlField('task', '')  ->addControlField('return', $input->getBase64('return', ''))  ->addControlField('forcedLanguage', $forcedLanguage);
А в layout'е просто используем метод
renderControlFields()
// В layout формыecho $this->form->renderControlFields();
Многие компоненты ядра уже используют этот подход. Соответствующий PR был принят в Joomla 5.3 осенью 2024г.Смотреть
Pull Request@joomlafeed#joomla #разработка #php

JoomGallery 4.1.0 - компонент галереи изображений для Joomla

JoomGallery 4.1.0 - компонент галереи изображений для Joomla

Новая итерация компонента продолжает развиваться, ведь с v.4.x компонент был переписан практически с нуля.

v.4.1.0. Что нового?

Редактирование метаданных изображений. Теперь метаданные можно не только читать, но и напрямую редактировать и записывать обратно в изображение JPG. Поддерживаются данные EXIF ​​и IPTC.

Полная совместимость с Joomla! 4.x, 5.x и 6.x. Компонент почистили от устаревших методов в коде.

Заметно ускорили загрузку больших галерей. Списки в админке, особенно для очень больших галерей ( >30 000 изображений), теперь загружаются значительно быстрее.

Несколько сеток lightGallery на одной странице. Будь то плагины контента или модули изображений: теперь вы можете отображать несколько галерей или категорий на одной странице без каких-либо ограничений.

Множество мелких исправлений ошибок и оптимизаций.

Сайт проекта

GitHub расширения

Скачать

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

DeniTornado

  • Захожу иногда
  • 123
  • 0 / 0
Всем доброго!
Установил этот плагин впервые и столкнулся с трудностью: у меня в форме около 20 полей будет (пока чуть меньше). И после запуска формы обнаруживается, что все поля расположены по вертикали.
1) Это некрасиво!
2) Пропадает много свободного места на веб странице

Задачка - хочется расположить некоторые элементы формы рядом с друг другом, т.е. к примеру поля -  Имя, Фамилия, телефон в одной строке. Электронная почта, адрес почтовый во второй строке по горизонтали. И т.д.
Я CSS+HTML не очень хорошо знаю, так...базовые вещи, сайт делаю для себя в плане любителя повозиться в Joomla. Почитал форумы как наши, так и зарубежные и темы на сайте разработчика. Вроде как все что поможет в данной задаче - это правка кода формы с выключенной галочкой "Автогенерация формы".

Друзья. Кто-нибудь может помочь, Подскажите пож-та что отвечает в коде за расстановку полей по горизонтали?

тег div - это ведь не табличная штука?
Или чтобы решить мою задачку надо добавлять теги таблицы <TD><TR>?

Вот код моей формы:
Код
<h2>{global:formtitle}</h2>
{error}
<!-- Do not remove this ID, it is used to identify the page so that the pagination script can work correctly -->
<fieldset class="form-horizontal formContainer" id="rsform_{global:formid}_page_0">
<div class="control-group rsform-block rsform-block-name{Name:errorClass}">
<label class="control-label formControlLabel hasTooltip" title="{Name:description}" for="Name">{Name:caption}<strong class="formRequired">(*)</strong></label>
<div class="controls formControls">
{Name:body} <span class="formValidation">{Name:validation}</span>
</div>
</div>
<div class="control-group rsform-block rsform-block-email{Email:errorClass}">
<label class="control-label formControlLabel hasTooltip" title="{Email:description}" for="Email">{Email:caption}<strong class="formRequired">(*)</strong></label>
<div class="controls formControls">
{Email:body} <span class="formValidation">{Email:validation}</span>
</div>
</div>
<div class="control-group rsform-block rsform-block-telephone{Telephone:errorClass}">
<label class="control-label formControlLabel hasTooltip" title="{Telephone:description}" for="Telephone">{Telephone:caption}</label>
<div class="controls formControls">
{Telephone:body} <span class="formValidation">{Telephone:validation}</span>
</div>
</div>
<div class="control-group rsform-block rsform-block-typework{Typework:errorClass}">
<label class="control-label formControlLabel hasTooltip" title="{Typework:description}" for="Typework">{Typework:caption}<strong class="formRequired">(*)</strong></label>
<div class="controls formControls">
{Typework:body} <span class="formValidation">{Typework:validation}</span>
</div>
</div>
<div class="control-group rsform-block rsform-block-memo{Memo:errorClass}">
<label class="control-label formControlLabel hasTooltip" title="{Memo:description}" for="Memo">{Memo:caption}<strong class="formRequired">(*)</strong></label>
<div class="controls formControls">
{Memo:body} <span class="formValidation">{Memo:validation}</span>
</div>
</div>
<div class="control-group rsform-block rsform-block-duration{Duration:errorClass}">
<label class="control-label formControlLabel hasTooltip" title="{Duration:description}" for="Duration">{Duration:caption}<strong class="formRequired">(*)</strong></label>
<div class="controls formControls">
{Duration:body} <span class="formValidation">{Duration:validation}</span>
</div>
</div>
<div class="control-group rsform-block rsform-block-auditoriya{Auditoriya:errorClass}">
<label class="control-label formControlLabel hasTooltip" title="{Auditoriya:description}" for="Auditoriya">{Auditoriya:caption}<strong class="formRequired">(*)</strong></label>
<div class="controls formControls">
{Auditoriya:body} <span class="formValidation">{Auditoriya:validation}</span>
</div>
</div>
<div class="control-group rsform-block rsform-block-datax{DataX:errorClass}">
<label class="control-label formControlLabel hasTooltip" title="{DataX:description}" for="DataX">{DataX:caption}<strong class="formRequired">(*)</strong></label>
<div class="controls formControls">
{DataX:body} <span class="formValidation">{DataX:validation}</span>
</div>
</div>
<div class="control-group rsform-block rsform-block-format{Format:errorClass}">
<label class="control-label formControlLabel hasTooltip" title="{Format:description}" for="Format">{Format:caption}<strong class="formRequired">(*)</strong></label>
<div class="controls formControls">
{Format:body} <span class="formValidation">{Format:validation}</span>
</div>
</div>
<div class="control-group rsform-block rsform-block-advanced{Advanced:errorClass}">
<label class="control-label formControlLabel hasTooltip" title="{Advanced:description}" for="Advanced">{Advanced:caption}<strong class="formRequired">(*)</strong></label>
<div class="controls formControls">
{Advanced:body} <span class="formValidation">{Advanced:validation}</span>
</div>
</div>
<div class="control-group rsform-block rsform-block-sendbutton{SendButton:errorClass}">
<label class="control-label formControlLabel hasTooltip" title="{SendButton:description}" for="SendButton">{SendButton:caption}</label>
<div class="controls formControls">
{SendButton:body} <span class="formValidation">{SendButton:validation}</span>
</div>
</div>
</fieldset>

Был бы крайне признателен за помощь. А то это заключительный этап в создании сайта и чего-то с формой застрял.
Спасибо!
*

Ilhom666

  • Завсегдатай
  • 1384
  • 184 / 0
например в CSS добавить
Код: css
.rsform-block.control-group {
  display: inline-block;
}
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Правила валидации полей RSForm Pro

Автор Anvari6120

Ответов: 0
Просмотров: 2409
Последний ответ 26.07.2022, 19:02:44
от Anvari6120
Не скрываются зависимые поля в форме

Автор timofe

Ответов: 0
Просмотров: 5231
Последний ответ 29.03.2022, 09:20:36
от timofe
Прикрипление файлов в форме RSForm

Автор stitch808

Ответов: 0
Просмотров: 2498
Последний ответ 28.03.2022, 17:34:40
от stitch808
Добавление полей пользователем

Автор Seal_LOSrec

Ответов: 3
Просмотров: 2561
Последний ответ 10.05.2021, 14:30:45
от IToro82
RsEvent! и калькулятор в форме RSForm

Автор Olegarh

Ответов: 8
Просмотров: 1012
Последний ответ 08.10.2020, 12:37:02
от sivers