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

Slava77

  • Захожу иногда
  • 85
  • 7 / 0
Здравствуйте!

Подскажите существует ли возможность, как-либо добавить разным дополнительным полям K2 разные классы.

Необходимо сделать разное оформление для полей, но без классов (какие-либо уникальные атрибуты также отсутствуют), это не представляется возможным реализовать.

Вариант с .itemExtraFields ul li:nth-child(..) {} не подходит, так как на разных материалах разное количество полей выводится, соответственно у них разный порядок.

Если это невозможно сделать с помощью изменения/дополнения кода в K2, может быть посоветуете какой-то дополнительный / сторонний плагин расширяющий штатные возможности дополнительных полей K2?

Благодарю за ответ!

Joomla! 3.9.27   
K2 v2.10.3
*

sivers

  • Живу я здесь
  • 2589
  • 359 / 0
Обычно для этого достаточно в макете вывести в качестве класса английское имя поля (алиас).
Если надо подробней - покажите макет.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

Slava77

  • Захожу иногда
  • 85
  • 7 / 0
Обычно для этого достаточно в макете вывести в качестве класса английское имя поля (алиас).
Если надо подробней - покажите макет.

Здравствуйте!

Спасибо за наводку, проверил у меня не выводился alias, подозреваю что это связано с тем, что еще давно был переопределен макет K2 в директорию с основным шаблоном

templates/имя шаблона/html/com_k2/default/item.php

и возможно на старых версиях K2 этого не было в макете, возможно по другим причинам куда-то делся вывод алиаса, за давностью уже сложно сказать  ^-^



Решение проблемы:

Добавил в строку своего шаблона, значение из базового шаблона K2 (которое выделенное жирным шрифтом в примере ниже):

<li class="<?php echo ($key%2)? "odd" : "even"; ?> type<?php echo ucfirst($extraField->type); ?> group<?php echo $extraField->group; ?> alias <?php echo ucfirst($extraField->alias); ?>">


На выходе генерируется следующая конструкция:

Было (без каких-либо уникальных атрибутов)

<div class="itemExtraFields">
      <h4>Дополнительная информация</h4>
      <ul>
              <li class="even typeSelect group1">
                    <span class="itemExtraFieldsLabel">Имя поля</span> <span class="itemExtraFieldsValue">Значения поля</span>
              </li>
              <li class="odd typeSelect group1">
                    <span class="itemExtraFieldsLabel">Имя поля</span> <span class="itemExtraFieldsValue">Значения поля</span>
              </li>
              ...итд...     
     </ul>
</div>



Стало (с уникальным для каждого поля классом alias)

<div class="itemExtraFields">
      <h4>Дополнительная информация</h4>
      <ul>
              <li class="even typeSelect group1 alias">
                    <span class="itemExtraFieldsLabel">Имя поля</span> <span class="itemExtraFieldsValue">Значения поля</span>
              </li>
              <li class="odd typeSelect group1  alias">
                    <span class="itemExtraFieldsLabel">Имя поля</span> <span class="itemExtraFieldsValue">Значения поля</span>
              </li>
              ...итд...
     </ul>
</div>


В итоге можно без проблем создавать отдельное оформление для каждого поля:

.alias {...}

Значение у каждого alias уникальное и задается в поле "псевдоним" при создании дополнительных полей в K2

Спасибо за помощь в решении вопроса!
« Последнее редактирование: 06.06.2021, 14:02:44 от Slava77 »
*

sivers

  • Живу я здесь
  • 2589
  • 359 / 0
Да на здоровье!
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Разные Title и заголовки в K2

Автор kilnart

Ответов: 38
Просмотров: 4757
Последний ответ 10.03.2024, 04:03:45
от Slava77
Разные страницы с результатами поиска на одном сайте com_k2

Автор NIKOLY

Ответов: 0
Просмотров: 1945
Последний ответ 22.08.2023, 15:44:05
от NIKOLY
Как добавить свой класс для страниц вывода материалов по тегу k2?

Автор Slava77

Ответов: 0
Просмотров: 3900
Последний ответ 16.02.2023, 23:29:34
от Slava77
Модуль с фильтрами для K2 по доп. полям

Автор KASich

Ответов: 3
Просмотров: 1165
Последний ответ 24.03.2020, 10:11:11
от AlexB
JA K2 Filter and Search Module и разные шаблоны для items

Автор Abez

Ответов: 0
Просмотров: 948
Последний ответ 24.02.2020, 11:43:10
от Abez