Новости Joomla

Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0

Метод registerListeners() в CMSPlugin в плагинах  планируется удалить в Joomla 7.0

👩‍💻 Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0.Этот метод регистрирует устаревшие слушатели событий в диспетчере, имитируя работу плагинов Joomla! 3.x и ниже для Joomla 4+. По умолчанию этот метод ищет все общедоступные методы, название которых начинается с on. Он регистрирует лямбда-функции (замыкания), которые пытаются преобразовать аргументы отправленного события в аргументы вызова метода и вызвать ваш метод on<Что-то>. Результат передаётся обратно событию в его аргумент result.Теперь этот слой совместимости с устаревшей Joomla 3 помечен к удалению в Joomla 7.0, которая должна выйти осенью 2027 года. Это означает, что те уникальные расширения от Joomla 2.5 / Joomla 3, которые ещё работали на Joomla 4-6 скорее всего окончательно перестанут работать на Joomla 7. Предполагается, что активные разработчики планомерно и постепенно избавляются от технического долга и обновляют свои расширения. @joomlafeed#joomla #разработка #php

0 Пользователей и 1 Гость просматривают эту тему.
  • 5 Ответов
  • 2123 Просмотров
*

olf

  • Захожу иногда
  • 360
  • 5 / 1
При вот таком раскладе вообще слетает всё что выводится в <head></head>. Это наблюдается при попытке вывести стили в цикле. Кто знает почему?
Код: php
$doc =& JFactory::getDocument();
$style = '
.interior {
background-repeat: no-repeat;
}
.interior .model-main-view-inner {
position: relative;
height: 100%;
}
';
foreach ($salons as $salon) {
$style .= '
.interior.'.$salon->caption.' {
background: url("'.$salon->original.'") no-repeat;
}
';
}
$doc->addStyleDeclaration($style);
*

olf

  • Захожу иногда
  • 360
  • 5 / 1
Что характерно. С циклом for работает без проблем:
Код: php
$doc =& JFactory::getDocument();
$style = '
.interior {
background-repeat: no-repeat;
}
.interior .model-main-view-inner {
position: relative;
height: 100%;
}
';
for($i = 0; $i < count($salons); $i++) {
$style .= '
.interior.'.$salons[$i]->caption.' {
background: url("'.$salons[$i]->original.'") no-repeat;
}
';
}
$doc->addStyleDeclaration($style);
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Да по идее особой то разницы нету. Единственное что в $salon копия объекта. Попробуйте так foreach ($salons as &$salon) {
интернет-блог: http://websiteprog.ru
*

olf

  • Захожу иногда
  • 360
  • 5 / 1
Да по идее особой то разницы нету. Единственное что в $salon копия объекта. Попробуйте так foreach ($salons as &$salon) {
Не работает. Видимо тут foreach не проходит.
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
а echo $style пробовали?
и зачем пишете & перед JFactory::getDocument()?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
В цикле for вы каждый раз вычисляете размер массива  count($salons);
Так Неправильно. Используется только в редких случаях где в цикле вы изменяете размерность массива
Код: php-brief
$len = count($salons);
for($i = 0; $i < $len; $i++) {}
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Добавление сортировки по второй таблице

Автор ninth

Ответов: 6
Просмотров: 1265
Последний ответ 30.09.2014, 12:37:55
от b2z
Добавление параметра в редактирование пункта меню Joomla

Автор olf

Ответов: 5
Просмотров: 1416
Последний ответ 07.07.2014, 22:23:55
от Shustry
Добавление своей библиотеки

Автор Aeliot

Ответов: 12
Просмотров: 2516
Последний ответ 15.02.2014, 09:27:35
от Aeliot
SOS! Добавление дополнительного фильтра в модель вида блога

Автор titansword

Ответов: 2
Просмотров: 7358
Последний ответ 11.10.2011, 17:41:08
от Виталик