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

Good_user

  • Захожу иногда
  • 149
  • 5 / 1
*

Good_user

  • Захожу иногда
  • 149
  • 5 / 1
Если вас есть хоть какие-нибудь идеи - подкидывайте, пожалуйста. Возможно это мне поможет решить задачу самому.
*

error648398

  • Захожу иногда
  • 168
  • 21 / 0
Могу конечно ошибаться (с PHP на - извините а вы кто такой ?)

Но если заменить в simple_discount.php

Заменить строчку
Код
$this->options['message'] = $this->params->get('message');
на условие:
Код
if(JFactory::getLanguage()->getTag() == 'ru-RU'){
$this->options['message'] = $this->params->get('message');;
}
elseif(JFactory::getLanguage()->getTag() == 'uk-UA') {
$this->options['message'] = $this->params->get('*****');;
}

Где ***** - name для поля, которое вы указали для украинской надписи.

То при смене языка будет выводить нужную нам надпись.
« Последнее редактирование: 31.07.2015, 05:08:59 от error648398 »
*

Good_user

  • Захожу иногда
  • 149
  • 5 / 1
error648398, спаситель, брат :-) Благодарствую Вам от души! Получилось все :-) Думал, что уже никто не отзовется! Теперь имеем рабочий бесплатный мультиязычный плагин скидки ;-)
*

Good_user

  • Захожу иногда
  • 149
  • 5 / 1
Для себя перепаковал арихвчик плагина со всеми доработками по мультиязычности. Поделюсь, может кому пригодится  ;) Еще раз благодарю error648398, побольше бы таких добрый и отзывчивых людей на форуме  ^-^
*

algen78

  • Новичок
  • 6
  • 0 / 0
А может кто проверить данный плагин на наличие вредоносного кода или уязвимости, а то у меня после установки на сайт вирус залез.
*

Good_user

  • Захожу иногда
  • 149
  • 5 / 1
А может кто проверить данный плагин на наличие вредоносного кода или уязвимости, а то у меня после установки на сайт вирус залез.
Хм...А как это отобразилось на сайте? Как Вы обнаружили вирус? Пометка в серпе или предупреждение в Я-Г вебмастерах?
Потому как у меня магазин уже около полугода в индексе и яндекс/гугл ничего не говорят. Вшитых ссылок не было.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
А может кто проверить данный плагин на наличие вредоносного кода или уязвимости, а то у меня после установки на сайт вирус залез.
с этим плагином не связано. ищите причину в другом месте.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

snaypertoha

  • Осваиваюсь на форуме
  • 40
  • 0 / 0
А как сделать чтобы скидка не применялась на товары, которые уже имеют скидку (Акционные товары)?
*

KDebtor

  • Новичок
  • 1
  • 0 / 0
А как сделать чтобы скидка не применялась на товары, которые уже имеют скидку (Акционные товары)?
Я сделал так, в com_jshopping\models\cart.php, в функции getSummForCalculeDiscount() заменить $sum = $this->getPriceProducts(); на
Код
 foreach ($this->products as $key_id => $prod)
{
    $product = JTable::getInstance('product', 'jshop');
    $product->load($prod['product_id']);
    $old_price_str = $product->product_old_price;
    $old_price = (int)$old_price_str;
    if ($old_price == 0) $sum = $sum + $prod['price'] * $prod['quantity'];
}
И для сохранения обратной совместимости в конструктор плагина вписал
Код
$jinput = JFactory::getApplication()->input;
$jinput->set('discount_addon', (int)1);
и в функцию getSummForCalculeDiscount() после того кода -
Код
$jinput = JFactory::getApplication()->input;
if ($jinput->get('discount_addon') != 1)  $sum = $this->getPriceProducts();

Это не универсальный код, и с проектами где на это накладываются еще скидки из коробки может не работать.
Зато ясно где ковыряться и исправление багов много времени не займет.

Сразу скажу, я плох в языках с динамической типизацией, путаюсь и тяжело воспринимаю чужой код, по этому делал без выпендрежа, просто что бы работало.
« Последнее редактирование: 02.04.2018, 00:34:17 от KDebtor »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Плагин уведомлений о заказах в телеграмм для JoomShopping

Автор thevaca

Ответов: 0
Просмотров: 193
Последний ответ 10.11.2025, 14:11:40
от thevaca
WT JoomShopping Favorite - кнопки избранного в категории товаров и карточке тов

Автор sergeytolkachyov

Ответов: 26
Просмотров: 36181
Последний ответ 14.10.2025, 12:54:56
от sergeytolkachyov
Не работает lightbox в JoomShopping

Автор d13v555

Ответов: 6
Просмотров: 1404
Последний ответ 08.10.2025, 15:34:46
от kit2m2
Атрибуты полей при оформлении заказа в JoomShopping

Автор goga_pgasovav

Ответов: 1
Просмотров: 846
Последний ответ 12.08.2025, 11:21:29
от kit2m2
Конфликт js шаблонов JoomShaper helix3 J5 с JoomShopping 5

Автор heartlink

Ответов: 6
Просмотров: 1615
Последний ответ 22.07.2025, 12:40:12
от heartlink