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

justquestion

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Контроллер:

class LoadsController extends JControllerLegacy
{
  public function add() {

    JRequest::setVar('view', 'loads');
    JRequest::setVar('layout', 'form');

    parent::display();
  }

Класс представления:

class LoadsViewLoads extends JViewLegacy
{
   public $operation;
}

Вопрос: как из класса контроллера присвоить переменной класса представления $operation значение?
Необходимо как-то получить экземпляр класса представления, как?
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
в контроллере :
Код: php
$view = $this->getView('Loads' , 'html', 'LoadsView');
$view->operation = 'somevalue';
$view->display();

Класс JRequest где то depricated, где то вобще выпилен, не юзайте его..
интернет-блог: http://websiteprog.ru
*

b2z

  • Глобальный модератор
  • 7287
  • 778 / 0
  • Разраблю понемногу
Класс JRequest где то depricated, где то вобще выпилен, не юзайте его..
Если компонент для 3.x, то вместо JRequest просто $this->input в контроллере.
Или JFactory::getApplication()->input

Подробнее здесь.

Если названия классов представления и контроллера совпадают (как у Вас), то можно просто:
Код: php
$view = $this->getView();
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Только не понятно зачем такие манипуляции если index.php?option=com_loads&view=loads&layout=form Сделает тоже самое!
*

justquestion

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
в контроллере :
Код: php
$view = $this->getView('Loads' , 'html', 'LoadsView');
$view->operation = 'somevalue';
$view->display();

Класс JRequest где то depricated, где то вобще выпилен, не юзайте его..
Как получить переменную $view в классе контроллера?
*

b2z

  • Глобальный модератор
  • 7287
  • 778 / 0
  • Разраблю понемногу
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Создание релиза компонента средствами GitHub

Автор SkyAn

Ответов: 4
Просмотров: 1130
Последний ответ 01.11.2019, 17:42:04
от Septdir
Получить данные из поля " file", и передать в файл обработчик

Автор Glog

Ответов: 5
Просмотров: 1711
Последний ответ 01.08.2017, 13:55:40
от Glog
Ошибка при попытке получить параметры активного пункта меню в контроллере компонента

Автор Inoken

Ответов: 10
Просмотров: 2015
Последний ответ 19.06.2017, 14:29:22
от dmitry_stas
Зависимость модуля от компонента и страницы

Автор Тренд

Ответов: 34
Просмотров: 3240
Последний ответ 16.06.2017, 19:48:39
от dmitry_stas
Организация доступа пользователей к контенту кастомного компонента

Автор Inoken

Ответов: 4
Просмотров: 1306
Последний ответ 15.06.2017, 10:05:40
от Inoken