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

7Rei

  • Захожу иногда
  • 134
  • 20 / 0
Правописание пхп [Решено]
« : 18.11.2008, 02:13:03 »
Имею код:

<?php global $Itemid;?>

<?php  if (ereg($Itemid,'90,91')) : ?>текст 1<?php endif ?>
<?php  if (ereg($Itemid,'94,105')) : ?>текст 2<?php endif ?>

Проблема в том, что если Itemid не указан, ему присваиваивается значение 0, и оба текста показываются, хотя не должны!
Как должен выглядеть код, чтобы не было такого глюка?
Спасибо
« Последнее редактирование: 01.07.2009, 23:27:40 от Forget-me-not »
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Правописание пхп
« Ответ #1 : 18.11.2008, 07:25:51 »
какой код должен отрабатывать, если ItemID == 0?
Может быть стоит сделать что то вроде:
Код: php
<?php global $Itemid;
if ($Itemid > '0') { ?>
  <?php  if (ereg($Itemid,'90,91')) : ?>текст 1<?php endif ?>
  <?php  if (ereg($Itemid,'94,105')) : ?>текст 2<?php endif ?>
<?php } else {} ?>
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
Re: Правописание пхп
« Ответ #2 : 18.11.2008, 08:52:16 »
Блин, зачем усложнять себе жизнь. При такой записи у вас и с $Itemid=9 будет такой же эффект как с 0. Вы хоть понимаете суть работы ereg?

Думаю, правильней писать что-то вроде
<?php if(in_array($Itemid,array(90,91))) : ?>текст 1<?php endif ?>
*

7Rei

  • Захожу иногда
  • 134
  • 20 / 0
Re: Правописание пхп
« Ответ #3 : 18.11.2008, 19:39:43 »
Блин, зачем усложнять себе жизнь. При такой записи у вас и с $Itemid=9 будет такой же эффект как с 0. Вы хоть понимаете суть работы ereg?

Думаю, правильней писать что-то вроде
<?php if(in_array($Itemid,array(90,91))) : ?>текст 1<?php endif ?>

Вообще не представляю суть его работы, работало по этому и использовал!!
Спасибо за вывод на светлую дорожку! :)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Проблема с авторизацией Invalid Token

Автор treX

Ответов: 100
Просмотров: 95515
Последний ответ 06.10.2019, 16:55:45
от PaLyCH
Как проверить форму обратной связи [Решено]

Автор mafiozzzza

Ответов: 8
Просмотров: 6668
Последний ответ 30.05.2017, 11:34:11
от darkghost
[Решено] Проблемка с якорями

Автор yarikk

Ответов: 6
Просмотров: 1838
Последний ответ 25.11.2016, 02:02:57
от yarikk
[Решено] Остаться на той же странице после авторизации

Автор dron

Ответов: 6
Просмотров: 3071
Последний ответ 30.11.2015, 14:07:27
от anoorik
(решено!) Белый экран при авторизации в Joomla

Автор pashaiglesias

Ответов: 8
Просмотров: 4700
Последний ответ 09.06.2015, 14:07:21
от pashaiglesias