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

iphonech

  • Захожу иногда
  • 60
  • 0 / 0
Как принудительно выровнять соденржание модуля вправо, если в шаблоне по дефолту прописано слева?
Есть допустим горизонтальный модуль. Хочу вывести в нем картинку. По дефолту он выравнивает по левому краю, а мне надо по правому. как этого добиться?
обрамлять картинку в теги <div="right"></div> не получается.
Через суффиксы класса модуля тоже. В шаблоне не нашел суффиксов. Шаблон - gamevision
Вот адрес сайта http://mq5.ru
подскажите как быть, желательно не залезая в CSS
*

iphonech

  • Захожу иногда
  • 60
  • 0 / 0
И еще вопрос. в шаблоне в самом низу присутствует код:
Код
<script type="text/javascript">

if (document.getElementById("s5_inset")) {
document.getElementById("s5_binner").style.width = 936 - 214 + "px";
}
else {
document.getElementById("s5_binner").style.width = 936 + "px";
}

if (document.getElementById("s5_body")) {
var bodyheight = document.getElementById("s5_body").offsetHeight;
}
if (document.getElementById("s5_column")) {
var columnheight = document.getElementById("s5_column").offsetHeight;
}

if (document.getElementById("s5_loader")) {
document.getElementById("s5_loader").style.height = document.getElementById("s5_outer_inner").offsetHeight +'px';
}
var divbody = 0;
var divinset = 0;
var divcolumn = 0;
if (document.getElementById("s5_column_inner")) {
checkcolumn = document.getElementById("s5_column").offsetHeight + document.getElementById("s5_column").offsetTop;
divcolumn = 1;
}
if (document.getElementById("s5_mainbody_inner")) {
checkbody = document.getElementById("s5_mainbody").offsetHeight + document.getElementById("s5_mainbody").offsetTop;
divbody = 1;
}
if (document.getElementById("s5_inset_inner")) {
checkinset = document.getElementById("s5_inset").offsetHeight + document.getElementById("s5_inset").offsetTop;
divinset = 1;
}
var checkcolumn = 0;
var checkbody = 0;
var checkinset = 0;
var bodybottomspacer = 0;
window.setTimeout('setdivs()',500);
</script>

для чего он нужен? будет ли работать шаблон, если этот код тупо удалить?
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
1. <div style="float:right;"></div>
2. Это адаптивная разметка по-деревенски насколько вижу. Думаю, всё рассыпется, если удалить.
*

iphonech

  • Захожу иногда
  • 60
  • 0 / 0
1. пасиба огромное, буду пробовать.
2. Да, удалив эти скрипты, пишет ошибку в шаблоне
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как создать новый блок в шаблоне?

Автор moov

Ответов: 7
Просмотров: 7481
Последний ответ 17.12.2018, 14:08:12
от arma
Поменять цвет блоков в шаблоне

Автор nuon

Ответов: 7
Просмотров: 4594
Последний ответ 10.01.2016, 23:11:34
от nuon
Ребят - В шаблоне Default

Автор Djaga

Ответов: 4
Просмотров: 2107
Последний ответ 10.12.2015, 08:01:47
от Djaga
Суффикс класса модуля, CSS

Автор ZdobnikovOB

Ответов: 17
Просмотров: 24873
Последний ответ 04.12.2015, 20:50:35
от Сergei
Замена фона в шаблоне Joomla

Автор Jons$

Ответов: 7
Просмотров: 11704
Последний ответ 12.10.2015, 15:49:09
от darkghost