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

Azorrr

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
У меня VirtueMart со скрытой регистрацией. То есть логином является е-мейл пользователя, а при покупках они вводят свое настоящее имя и фамилию. Сейчас в JComments я могу выбрать, чтоб у зарегистрированного юзера в качестве имени отображался либо его настоящий е-мейл, либо его настоящее имя - и то и другое плохо, это раскрытие личных данных.

Как сделать, чтобы поле "Имя" не исчезало для зарегистрированных пользователей, а оставалось, и человек мог бы ввести туда любое имя? А его персональные данные бы не затрагивались.
Помогите, пожалуйста!

Стоит версия 2.1.0.0.
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
1. Без правки логики работы компонента - никак. Если вашим пользователям стыдно показывать свои имена - тогда можно просто в шаблоне комментариев заменить отображение имени, на любое слово, например Покупатель. И все.

2. JComments 2.1.0.0 уже морально устарела, настоятельно рекомендую обновить до версии 2.2.0.2
*

Azorrr

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Спасибо, погляжу в шаблоне.
Мы еще не открылись, и дело, конечно, не в стыде. Просто у человека нет выбора - когда он зареген, и нажимает кнопочку "Оставить комментарий", то там даже нет поля "Имя". Человек не ожидает подвоха. А в комменте потом неожиданно для него появлялись бы его настоящие Имя и фамилия сразу - у нас эти поля объединены в одно.
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Ну компонент использует стандартные объекты системы, вполне стандартным способом. Он считает, что в поле логин находится логин, а в поле имя - имя. А то, что вы в качестве логина, указали email, то это как бы ему неизвестно. У любого пользователя, обычного сайта на Joomla, есть логин и имя. А у администратора выбор - какое из них показывать. Для компонента комментариев, нет никакого смысла хранить еще какое-то третье поле, для авторизованных пользователей. В данной конкретной ситуации, вы сами лишили пользователя выбора. И тут надо уже думать как выкручиваться. Мне кажется, что самый простой способ - в том месте, где пользователь указывает свое имя, объяснить, где и как это имя может использоваться.

Гости могут вводить любые имена, но так, как в этом случае это почти всегда безнаказанно, то гостей обычно урезают в правах. Авторизованные пользователи, это уже пользователи сайта, им можно и прав дать больше, и адекватности ожидать и т.д. Поэтому считается, что то имя, которое они указали, можно смело показывать. Да и поменять они его могут в любой момент времени. А что делать в вашей ситуации - не знаю.

В принципе, можно попробовать выкрутиться. При условии, что в поле Имя у вас находится полное имя, можно на уровне шаблона комментариев, выкусывать из него фамилию и отчество, оставлять только имя. И тогда комментарии будут оставлены не от Иванова Андрея Петровича, а просто от Андрея.
*

Azorrr

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Да, оставлять только имя, выкусывая фамилию - тоже вариант, спасибо.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Checkbox согласия на обработку данных

Автор vitzer

Ответов: 5
Просмотров: 6352
Последний ответ 30.07.2021, 18:16:57
от AlexP750
Выпадающий список в поле "Тема"

Автор Ахмат

Ответов: 7
Просмотров: 898
Последний ответ 08.09.2020, 20:22:03
от voland
Как сделать не опубликованные комментарии видны своим авторам?

Автор John_Flores

Ответов: 0
Просмотров: 835
Последний ответ 03.09.2020, 09:03:34
от John_Flores
Как в Jcomments сделать активную ссылку с имени комментатора на его сайт?

Автор NatFree

Ответов: 1
Просмотров: 1117
Последний ответ 25.05.2019, 07:53:25
от draff
Дополниетльное поле в JComments

Автор Apoca1ypto

Ответов: 0
Просмотров: 978
Последний ответ 26.02.2019, 11:47:31
от Apoca1ypto