Новости 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

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 Ответов
  • 880 Просмотров
*

Valderdag

  • Новичок
  • 9
  • 0 / 0
  • Миру - Мир !
VM3 не отдает ошибку 404
« : 02.06.2020, 13:52:54 »
Приветствую уважаемые форумчане!
Столкнулся с избитой темой, что Virtuemart  не отдает 404 ошибку, а перенаправляет на главную. После упорных поисков нашел решение, с которым и делюсь:
Стоит J3.9.18+ VM3.8.2+php7.3.15; VM на главной, включена стандартная SEO c русскими урлами, шаблон с error.php. Хаков с созданием материала 404 и подключением  в стандартный error не делал.
Отключаем в админке VM обработку 404, заходим в router.php смотрим конструкцию:
Код
if(!isset($vars['virtuemart_product_id'])) {
после
Код
else
добавляем вызов метода 
Код
JError::raiseError(404, JText::_("Page Not Found"));
У меня это строка 757. Работает чётко: все меню, категории, товары, корзина, оформление заказа доступны по своим адресам, при неверном урле отдает 404. Вот сам router.php  https://github.com/Valderdag/virtuemart/blob/master/router.php
 
« Последнее редактирование: 02.06.2020, 15:35:32 от Valderdag »
*

diadora83

  • Новичок
  • 9
  • 0 / 0
Re: VM3 не отдает ошибку 404
« Ответ #1 : 15.03.2021, 18:39:10 »
Добрый день. Изучаю эту же проблему.
J 3.8.12 VM 3.4.2

Страница товара доступна по следующему адресу.
http://радиаторы-оптом.рф/alyuminievye-radiatory/teplopribor-ar/teplopribor-ar-1-500/alyuminievyj-radiator-teplopribor-ar1-500-5-sektsij

при изменении в ссылке самой страницы товара alyuminievyj-radiator-teplopribor-ar1-500-5-sektsij выдает 404 ошибку, все ок.

а при изменении ссылок категорий /alyuminievye-radiatory/teplopribor-ar/teplopribor-ar-1-500/ товар остается доступен

т.е. товар доступен по ссылке http://радиаторы-оптом.рф/1215151555/alyuminievyj-radiator-teplopribor-ar1-500-5-sektsij

С категориями похожая ситуация, категория доступна по адресу http://радиаторы-оптом.рф/alyuminievye-radiatory/teplopribor-ar/teplopribor-ar-1-500. Если изменить последнюю часть ссылки, ошибка 404, все ок,

если изменить предыдущую часть ссылки, страница все равно будет доступна. http://радиаторы-оптом.рф/151555/teplopribor-ar-1-500

Куда копать ума не приложу(((
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Сопутствующие категории начали выдовать ошибку

Автор Stasweb

Ответов: 5
Просмотров: 928
Последний ответ 04.06.2019, 20:45:59
от fsv
Joomla+ VirtueMart страница 404 не отдает код 404

Автор Adrian1111

Ответов: 11
Просмотров: 5018
Последний ответ 24.12.2018, 10:58:17
от rsn
Категории VirtueMart 3 Отдают поисковому боту 500 ошибку

Автор nikolaichevam

Ответов: 1
Просмотров: 915
Последний ответ 04.10.2017, 19:06:24
от nikolaichevam
Не могу победить ошибку при вставки кода

Автор Stasweb

Ответов: 3
Просмотров: 890
Последний ответ 11.09.2017, 18:54:13
от Stasweb
Новая версия выдает ошибку при заходе в раздел Магазин

Автор Mehanick

Ответов: 2
Просмотров: 824
Последний ответ 08.06.2017, 09:16:13
от Mehanick