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

Koriolan

  • Захожу иногда
  • 118
  • 0 / 0
Доброго времени суток.

Столкнулся с такой проблемой. В модуле необходимо вывести изображение категории, ее название и описание. ZOO Category позволяет вывести только название. В связи с этим вопрос:
1. Можно ли подточить модуль под эту задачу? (если да, то какие файлы необходимо править?)
2. Может есть готовые решения? (как называются и где можно найти)


*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
1. Можно. название модуля/tmpl/default.php скопировать в шаблон/html/modulename/default.php и править
2. в Google искать
*

tamaz

  • Захожу иногда
  • 119
  • 8 / 0
К сожалению, в Google пока нет информации на эту тему.  


РЕШЕНИЕ:

Открываем файл: modules/mod_zoocategory/helper.php
Примерно в 35 строке, перед:    
Код
$current = $current_id == $category->id;
Определяем переменные:
Превью:
Код
$cat_img = $category->params->get('content.category_teaser_image');
Выводит путь до картинки анонса.




Анонс:
Код
$cat_s_desc = $category->params->get('content.category_teaser_text');
Выводит текст анонса

Далее, в районе 44 строки ищем условие:
Код
if ($params->get('add_count', 0)) {
$result[] = "<a href=\"$url\"$class><span>{$category->params} ({$category->itemCount()})</span></a>";
} else {
$result[] = "<a href=\"$url\"$class><span>{$category->name}</span></a>";
}

Данное условие как раз выводит ссылки на категории в двух варианта: с счётчиком элементов категории и без него.
Нам нужно изменить значение массива $result[] добавив в него новые параметры.
И так, меняем:
Код
$result[] = "<a href=\"$url\"$class><span>{$category->params} ({$category->itemCount()})</span></a>";
на


Цитировать
$result[] = "<a href=\"$url\"$class>
            <span>{$category->name} ({$category->itemCount()})</span>
            <img src=\"$cat_img\" alt=\"{$category->name}\" />
            
            </a>
                                <div>$cat_s_desc</div>


       ";


в else делаем тоже самое, там просто нету счётчика элементов.

Код
$result[] = "<a href=\"$url\"$class><span>{$category->params}</span></a>";
меняем на:

Цитировать
$result[] = "
            <a href=\"$url\"$class><span>{$category->name}</span>
            <img src=\"$cat_img\" alt=\"{$category->name}\" />
            </a>
            <div>$cat_s_desc</div>




Вот и всё.
Конечно можно ещё сделать дополнительный параметр в настройках категории, для включения и выключения картинки и краткого описания. Но это уже по желанию.

Надеюсь кому-нибудь пригодиться  ^-^



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

Error!-Error-Reordering Category (invalid slug)

Автор sig_

Ответов: 2
Просмотров: 3892
Последний ответ 27.11.2020, 08:59:35
от vasmed
Как убрать из ссылки category?

Автор stardel

Ответов: 4
Просмотров: 1671
Последний ответ 09.06.2015, 01:59:46
от ameli90
Показ элементов категории в модуле YOOtheme ZOO Category

Автор rain_heart

Ответов: 2
Просмотров: 3030
Последний ответ 08.05.2014, 12:23:46
от rain_heart
Где перевести 'Please choose a category'?

Автор tutub

Ответов: 1
Просмотров: 1442
Последний ответ 23.08.2013, 23:04:36
от tutub
Zoo Category. Убрать некоторые категории из списка

Автор createa

Ответов: 5
Просмотров: 1882
Последний ответ 25.04.2013, 01:08:21
от createa