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

indes

  • Новичок
  • 6
  • 0 / 0
Проблема в следующем - при установке любого модуля - что баннер, что слайдер - на лиц.части сайта появляется < class="moduletable ">, при просмотре кода элемента идет ссылка на файл index, но я ве файлы index посмотрела - там нет таких строчек, через админку все настройки перепробовала, может чего-то не вижу, но итог один, ничего не получилось, около каждого установленного модуля стоит < class="moduletable ">
Помогите решить проблему
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
можно ссылку на сайт с указанием места где это происходит?
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

indes

  • Новичок
  • 6
  • 0 / 0
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
у вас Яндекс ментрика нарушена и вы в коде протупили, внедряя код их
не уверен что это повлекло, но ошибка там есть точно.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
с указанием места где это происходит?


P.S. сайт прекрасен, лучше никогда не видел
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
сарказм так и прёт
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

indes

  • Новичок
  • 6
  • 0 / 0
Спасибо, я его только доделываю, вот и вылезает всякое,  а что с кодом не так?не там вставила? а может быть проблема в том что я новый шаблон подгрузила, на старом такого не было и нужно ли удалять код Яндекс метрики со старого шаблона
*

SeBun

  • BanMaster
  • 4030
  • 259 / 5
  • @SeBun48
сайт прекрасен, лучше никогда не видел

Зато как прокомментирован, такое редко встретишь!

По сабжу - в исходном коде 298 строка, закpойте div.
« Последнее редактирование: 11.06.2015, 22:49:52 от SeBun »
Оказываю услуги по Joomla | Миграция/Обновление | Сопровождение | IT-аутсорсинг | Недорогие домены и хостинг
*

deviane

  • Новичок
  • 5
  • 0 / 0
Re: Как убрать &amp;amp;lt; class=?
« Ответ #8 : 06.05.2020, 18:27:59 »
здравствуйте.  у меня Joomla 3. не могу убрать moduletable. или глюк какой. я начинаю только. из того. что разобралась. если в стиле ставить none, то вроде как должно убирать, но не убирает.
строка выглядит так:
Код
<jdoc:include type="modules" name="Header" style="none"/>
папку систем не правила. добавила только  в папку с темой в папку мод_кастом:
Код
<?php
defined('_JEXEC') or die;
if($moduleclass_sfx){   
   echo '<div class="'.$moduleclass_sfx.'">' . $module->content . '<>';   
}
else{
   echo $module->content;
}
?>
чтобы убрать div с классом custom.
темы как таковой нет. сделала шаблон (минимальные папки) сама.
буду признательна за советы, куда еще смотреть.


*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Как убрать &amp;lt; class=?
« Ответ #9 : 06.05.2020, 18:48:36 »
Обычно этот класс добавляется тут \templates\шаблон\html\modules.php для разных style
Рекомендую переопределить стиль вывода модуля, сделать в указанном файле свою функцию с нужным классом
К примеру в этом файле создаем свою функцию
Код
function modChrome_nodiv($module, &$params, &$attribs)
{
if (!empty ($module->content)) { ?>
<div class="module<?php echo htmlspecialchars($params->get('moduleclass_sfx')); ?>">
<?php if ($module->showtitle) { ?>
<h3><?php echo $module->title; ?></h3>
<?php }; ?>
<?php echo $module->content; ?></div>
<?php
};
}
И после этого модуль в шаблоне прописывается с  style="nodiv" и базовый класс модуля будет module, а не moduletable
В общем с шаблонизацией можете играть как угодно
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

deviane

  • Новичок
  • 5
  • 0 / 0
спасибо за ответ. к сожалению не помогло и это. решилось все сносом и переустановкой Joomla.
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Как убрать < class=?
« Ответ #11 : 07.05.2020, 17:35:38 »
Очень кардинальное решение, уверен, что там достаточно было бы разобраться с шаблонизацией модулей и на этом все (одну строку изменить)
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как убрать из индекса Яндекса дубли?

Автор gonzyk263

Ответов: 3
Просмотров: 3937
Последний ответ 01.07.2024, 23:26:54
от Cleaning74
Оптимизация сайта

Автор joni

Ответов: 0
Просмотров: 2187
Последний ответ 22.07.2023, 17:10:11
от joni
Скрипт при закрытии сайта

Автор Mick_20

Ответов: 8
Просмотров: 2656
Последний ответ 14.06.2023, 18:40:20
от effrit
Кнопка “Добавить в корзину” VirtueMart не работает на главной странице сайта

Автор max_max

Ответов: 0
Просмотров: 7324
Последний ответ 20.04.2021, 12:40:37
от max_max
[FAQ] Как убрать <meta name="generator" content="Joomla! 2.5 - Open Source Content Management" />

Автор neket

Ответов: 56
Просмотров: 316596
Последний ответ 05.11.2020, 20:00:15
от Grigoriy82