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

lamrak

  • Новичок
  • 4
  • 0 / 0
Проблема с меню
« : 31.01.2011, 11:59:14 »
Привет всем!
Такая проблема, может кто сталкивался, что подскажет:

У меня есть сложное главное меню с бэграундом, который собирается с помощью нескольких вложенных тэгов <li><a href="#"><span>Company</span><em></em></a></li> (принцип раздвижных ворот, кажется как то так называется). В общем, я отредактировал соответствующие файлы в модуле меню (mod_mainmenu), в самом файле helper.php.

Меню получилось, все отлично. Но, дело в том, что на сайте у меня еще есть 5 различных меню, и теперь у меня в каждом меню, естественно, генерируются все эти тэги <span>, <em>, которые там и не нужны. Вопрос, как лучше разделить код для главного меню, и остальных меню. Честно признаюсь, что в php я настолько же силен, как в бальных танцах, переписать код с проверкой на главное/не_главное меню вряд ли получится. Какие есть еще варианты? Проще всего через CSS скрывать <em> (но это не комильфо), или попробовать создать на базе mod_mainmenu еще один плагин меню (чего с наскоку не получилось) без избыточных тэгов.

Возможно кто-то с подобной проблемой уже сталкивался и знает, как решить ее без лишних жертв? Спасибо!
*

lamrak

  • Новичок
  • 4
  • 0 / 0
Re: Проблема с меню
« Ответ #1 : 02.02.2011, 19:58:17 »
Всем спасибо за поддержку :), проблема решена след. способом:

В файле mod_mainmenu.xml я добавил еще один параметр,

Код
<param name="type_tag_list" type="list" default="0" label="Type Tag List" description="Choose tag's type">
<option value="0">Default</option>
<option value="1">EM Tags</option>
<option value="2">Drop-Down</option>
</param>

с помощью которого, в Менеджере меню я указывал, какой код я хочу видеть в моем меню - с em-ом, с завернутым вложенным списком в div, или без каких либо добавочных тэгов.
В mod_mainmenu.php добавляю строку, получая значения (0 - по-умолчанию без тэгов, 1 - с em-ами, 2 - завернуть вложенный в div), а в темплейте default.php указал через switch что делать

Код
switch ($typetaglist){
case 0:
modMainMenuHelper::render($params, 'modMainMenuXMLCallback');
break;
case 1:
ob_start();
modMainMenuHelper::render($params, 'modMainMenuXMLCallback');
$menu_html = ob_get_contents();
ob_end_clean();
$menu_html = str_replace("<a", "<a", $menu_html);
$menu_html = str_replace("</a>", "<em></em></a>", $menu_html);
echo $menu_html;
break;
case 2:
ob_start();
modMainMenuHelper::render($params, 'modMainMenuXMLCallback');
$menu_html = ob_get_contents();
ob_end_clean();
$menu_html = str_replace("</a><ul>", "<div><ul>", $menu_html);
$menu_html = str_replace("</ul></li>", "</ul></div></li>", $menu_html);
echo $menu_html;
break;
}

Так я и решил свою задачу. Может кому пригодится способ.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

убрать из меню заголовки h3

Автор nexter

Ответов: 19
Просмотров: 8010
Последний ответ 03.02.2020, 18:49:47
от durte
При добавлении нового пункта меню не отображается содержимое

Автор Denko

Ответов: 2
Просмотров: 3384
Последний ответ 16.01.2020, 18:40:55
от Denko
Не нажимается пункт меню на мобильной версии

Автор Sensession

Ответов: 7
Просмотров: 4926
Последний ответ 04.01.2020, 16:45:27
от xpank
Не отображаются пункты в меню

Автор physic

Ответов: 20
Просмотров: 23127
Последний ответ 20.09.2019, 16:54:01
от beliyadm
Как в ARI Ext Menu добиться работы параметра "Показать в меню"?

Автор vasmed

Ответов: 1
Просмотров: 3640
Последний ответ 01.03.2019, 11:12:18
от vasmed