Новости Joomla

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

👩‍💻 Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод triggerEvent(), с помощью которого раньше вызывались события для плагинов. Теперь чтобы в своём коде вызвать событие для плагина и получить от него результаты нужно:- создать объект класса события- передать в него параметры

use Joomla\CMS\Event\AbstractEvent;use Joomla\CMS\Factory;use Joomla\CMS\Plugin\PluginHelper;// Грузим плагины нужных группPluginHelper::importPlugin('system');// Создаём объект события$event = AbstractEvent::create('onAfterInitUniverse', [    'subject' => $this,    'data'    => $data, // какие-то данные    'article' => $article, // ещё материал вдовесок    'product' => $product, // и товаров подвезли]);// Триггерим событиеFactory::getApplication()->getDispatcher()->dispatch(    $event->getName(), // Тут можно строку передать 'onAfterInitUniverse'    $event);// Получаем результаты// В случае с AbstractEvent это может быть не 'result',// а что-то ещё - куда сами отдадите данные.// 2-й аргумент - значение по умолчанию, // если не получены результаты$results = $event->getArgument('result', []);
Плюсы такого подхода - вам не нужно запоминать порядок аргументов и проверять их наличие. Если вы написали свой класс события, то в плагине можно получать аргументы с помощью методов $event->getArticle(), $event->getData(), $event->getProduct() и подобными - реализуете сами под свои нужды. Если такой класс события написали, то создаёте экземпляр своего класса события и укажите его явно в аргументе eventClass
use Joomla\Component\MyComponent\Administrator\Event\MyCoolEvent;$event = MyCoolEvent::create('onAfterInitUniverse', [    'subject'    => $this,    'eventClass' => MyCoolEvent::class, // ваш класс события    'data'       => $data, // какие-то данные    'article'    => $article, // ещё материал вдовесок    'product'    => $product, // и товаров подвезли]);
Ожидаемо, что класс вашего события будет расширять AbsractEvent или другие классы событий Joomla.🙁 Есть неприятный нюанс - нельзя просто так вызывать событие и ничего не передать в аргументы. Аргумент subject обязательный. Но если вы всё-таки не хотите туда ничего передавать - передайте туда пустой stdClass или объект Joomla\registry\Registry.
@joomlafeed#joomla #php #webdev

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

knatalik

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Добрый день

Вторую неделю боремся с нехваткой памяти на сервере (уже добавили тайм-аут в robots.txt 10сек) и остановками сервера, а техподдержка reg.ru сообщает, что проблема в некорректной работе компонента components/com_weblinks. На вирус проверили вчера, вирус не найдет. Доп.защиту на админку тоже поставили уже 2 дня назад, но проблема продолжается и сегодня при элементарном входе в админку через 2 мин работы остановился сервер.

Вот сообщение от техподдержки: В логах по-прежнему наблюдается большое количество запросов, связанных с com_weblinks:
 1561 сервер
[root@vps30532 /]# cat /var/log/nginx/access.log | grep сервер |tail
сервер - - [30/Oct/2015:10:59:46 +0400] "GET /components/com_weblinks/1/10.php HTTP/1.1" 499 0 "http://сайт.ru/components/com_weblinks/1/10.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" "-"
сервер - - [30/Oct/2015:10:59:46 +0400] "GET /components/com_weblinks/1/11.php HTTP/1.1" 499 0 "http://сайт.ru/components/com_weblinks/1/11.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" "-"
сервер - - [30/Oct/2015:10:59:46 +0400] "GET /components/com_weblinks/1/12.php HTTP/1.1" 499 0 "http://сайт.ru/components/com_weblinks/1/12.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" "-"
сервер - - [30/Oct/2015:10:59:46 +0400] "GET /components/com_weblinks/1/13.php HTTP/1.1" 499 0 "http://сайт.ru/components/com_weblinks/1/13.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" "-"
сервер -- - [30/Oct/2015:10:59:46 +0400] "GET /components/com_weblinks/1/14.php HTTP/1.1" 499 0 "http://сайт.ru/components/com_weblinks/1/14.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" "-"
сервер - - [30/Oct/2015:10:59:46 +0400] "GET /components/com_weblinks/1/15.php HTTP/1.1" 499 0 "http://сайт.ru/components/com_weblinks/1/15.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" "-"
сервер -- - [30/Oct/2015:10:59:46 +0400] "GET /components/com_weblinks/1/16.php HTTP/1.1" 499 0 "http://сайт.ru/components/com_weblinks/1/16.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" "-"
сервер - - [30/Oct/2015:10:59:46 +0400] "GET /components/com_weblinks/1/17.php HTTP/1.1" 499 0 "http://сайт.ru/components/com_weblinks/1/17.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" "-"
сервер - - [30/Oct/2015:10:59:46 +0400] "GET /components/com_weblinks/1/19.php HTTP/1.1" 499 0 "http://сайт.ru/components/com_weblinks/1/19.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" "-"
сервер - - [30/Oct/2015:10:59:46 +0400] "GET /components/com_weblinks/1/20.php HTTP/1.1" 499 0 "http://сайт.ru/components/com_weblinks/1/20.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" "-"
В качестве решения попробуйте отключить компонент и проверить актуальность проблемы.

Нашли аналогичную тему http://joomlaforum.ru/index.php?topic=308080.0" , но поскольку мы "чайники"  и у нас нет в настоящий момент пока разработчика, то помогите "разжевать" что нам надо сделать чтобы избавиться от этой проблемы ? за что отвечает данный компонент ? что это за проблема?

Доступ к серверу через IPC manager только.

Заранее благодарим за помощь

« Последнее редактирование: 31.10.2015, 15:47:14 от knatalik »
*

knatalik

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
а техподдержка reg.ru сообщает ...

Я как то столкнулся с ними раза три. Мне они и не такое сообщали. ;D
Вам ещё не писали каждый день-закажите у них платно анализ и всякие остальные типа ихние фишки?

Возьмите демо хост(не у них, еесли нет желания оплатить хотябы на мес.гдето) и у вас не будет таких проблем.Просто проверите.
***
Не найдёте решение и/или не поверите, что я прав-я вам могу бесплатно выделить место у себя.
И вам стоит проверить ваш сайт на "лишний код" и !пора переходить на 3-ку!
« Последнее редактирование: 30.10.2015, 13:06:53 от vipiusss »
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
На вирус проверили вчера, вирус не найдет.
Версия Joomla 1.5.19
Терзают смутные сомнения, что вас не взломали.
*

knatalik

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Спасибо за ответы.
Переходить будем на 3ку, но сейчас нужно решить проблему с нехваткой памяти постоянной и остановками из за этого сервера.  Разработчика нет пока у нас, потому проверить на лишний код тоже пока не можем.

Рег.ру корректны,  платные услуги не предлагают, даже не предлагают повысить тарифный план и отвечают следующее: "При наличии постоянной нагрузки проблема также может быть актуальна и после повышения тарифного плана, поэтому мы рекомендуем отключить компонент и проверить работу сервера."

Помогите решить данную проблему. Если нас не вскрыли, то что это? проверяли на вирус аж два раза (при том что крутилась проверка 7 часов !) Что мы можем сделать самостоятельно на элементарном уровне чтобы убрать эту проблему ?

Спасибо за помощь
*

Ragivort

  • Завсегдатай
  • 1154
  • 58 / 2
  • Такая Life
А вы используете этот компонент? Отключите, посмотрите, исправит ли это ситуацию. Вирус скорее всего
Дозволь мне свершить то добро, которое я способен свершить, теперь, ибо я могу более не вернуться сюда.
*

knatalik

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Мы "чайники" потому : для чего он нужен, этот компонент? используется или он как проверить? и как его отключить?
на вирус проверяли, нет вируса: "Антивирусная проверка файлов каталога /var/www не выявила вредоносное ПО. "
спасибо
*

Ragivort

  • Завсегдатай
  • 1154
  • 58 / 2
  • Такая Life
Менеджер расширений - управление - компоненты, если можно отключить, отключите
Дозволь мне свершить то добро, которое я способен свершить, теперь, ибо я могу более не вернуться сюда.
*

knatalik

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
а за что он отвечает этот компонент? ничего не рухнет? спасибо
*

wishlight

  • Гуру
  • 5059
  • 315 / 1
  • От 300 руб быстрый хостинг. Сервера.
Он отвечает за публикацию ссылок. Что-то типа каталога. Давно не нужен. А вот взломать могли..
*

knatalik

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
спасибо за помощь. отключили, пока вроде все работает.
если не найден вирус, то все равно могли взломать?
какую доп.защиту кроме доп.пароля на админку можно еще поставить от взлома?
спасибо
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
188.93.210.44 - - [30/Oct/2015:10:59:46 +0400] "GET /components/com_weblinks/1/14.php HTTP/1.1" 499 0 "http://сайт.ru/components/com_weblinks/1/14.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" "-"

Ну и каким боком шелл обыкновенный относится к компоненту ссылок?
Правильный ответ - никаким, он лишь прячется в его папке.
*

knatalik

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
уточните плеаз шелл - это как раз файл взлома? через который попадают в админку или на сервер ?
мы отключили данный компонент, теперь проблемы больше не будет или данный шелл еще где-то может сидеть?
как можно защитить админку и сервер ? на админке стоит доп.пароль
спасибо за помощь
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
мы отключили данный компонент, теперь проблемы больше не будет или данный шелл еще где-то может сидеть?
Хоспади!
Ну и каким боком шелл обыкновенный относится к компоненту ссылок?
Правильный ответ - никаким, он лишь прячется в его папке.
Да хоть заотключайтесь, нет там связи! Смотрите есть ли там файлы левые.
И вообще - в разделе я редко, но выше некоторые такую ерунду понаписали, тут фак`а нет разве?
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
ЗЫ. Ответ 499 - взлома нет, обработать таких запросов в день можно под миллион, у вас их там 10млн что ли?
*

wishlight

  • Гуру
  • 5059
  • 315 / 1
  • От 300 руб быстрый хостинг. Сервера.
Да.. интересные файлы. А что в них покажете?
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
для вас дополнительная защита обновить до 1.5.26 с последним патчем и обновлением/удалением уязвимых расширений если они имеются
уточните плеаз шелл - это как раз файл взлома?

shell это панель своего рода, проще говоря скрипт доступа к хосту
*

knatalik

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
мы "чайники" в этом деле .... потому и спрашиваем совета и помощи
у нас проблема: постоянная нехватка памяти (логи выше) потому техподдержка посоветовала отключить этот контект и посмотреть изменится ли ситуация.
спасибо за помощь
*

knatalik

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
для вас дополнительная защита обновить до 1.5.26 с последним патчем и обновлением/удалением уязвимых расширений если они имеютсяshell это панель своего рода, проще говоря скрипт доступа к хосту
самостоятельно это мы врядли сделаем, наверное...только через разработчиков
*

wishlight

  • Гуру
  • 5059
  • 315 / 1
  • От 300 руб быстрый хостинг. Сервера.
Не изменится. Я так понял, что там старый VirtueMart на Joomla 1.5.19. Вас взломали и что-то делают. Принимайте меры.
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
изменится но не надолго, вам надо не пробывать а меры предпринимать, если
мы "чайники" в этом деле .... потому и спрашиваем совета и помощи
у нас проблема: постоянная нехватка памяти (логи выше) потому техподдержка посоветовала отключить этот контект и посмотреть изменится ли ситуация.

стоит найти человека для решения проблемы т.е. обратиться к специалистам
*

knatalik

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
так нас взломали или нет?
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
так нас взломали или нет?
Это только вы знаете.
Если в таких запросах где-то есть ответ 200 - тогда взломали, если везде 499 - самое обычное сканирование на внедрённые шеллы.

Впрочем, учитывая что
Версия Joomla 1.5.19
Оценю вероятность что взломали в 84%
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
может и ресурсов не хватать если посещаемость растет а может и взломали
*

knatalik

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
да, каждый раз присылали и там было 499
так компонент оставить откллюченным ?
и срочно искать специалиста...
спасибо
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
да, каждый раз присылали и там было 499
так компонент оставить откллюченным ?
и срочно искать специалиста...
спасибо

да не включайте у вас с отключеным полет нормальный видно что не падает сейчас сайт
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Пока сайт не падает, копируйте тот материал и картинки нужные на локальный комп (не папки сайта! и не файлы движка(навсяк предупредил!)) в текстовые файлы для будушей 3-ки и готовьтесь к смене движка и дизайна.
Могу с этим помочь и думаю форум тоже поможет!

А перекрашивать "ржавый запорожец" не имет смысла, если есть новенький мерс!
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
А перекрашивать "ржавый запорожец" не имет смысла, если есть новенький мерс!
Хорошо жить не запретишь  ;D
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Хорошо жить не запретишь  ;D
С вашей помощью, господа!Только с вашей!  ::) ;)
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

knatalik

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Добрый вечер всем
у нас сервер останавливается и не перезагружается, неоднократно перегружали через личный кабинет рег.ру он вылетает. Получилось в один перерыв (когда заработал) зайти и вернуть обратно компонент weblinks.  может быть это из-за этого компонента или в чем то другом причина ? он все таки не нужен, этот компонент или нужен?

Все равно сервер оснавливается. Поддержка рег.ру работает только по тикет-системе, потому ответ получим часа так черз 4-5. Помогите как перезагрузить ? через SSH не получается также подключиться (установили Putty), почему то не принимает пароль хотя в ICP manager заходит с тем же паролем
Спасибо за помощь
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Форма письма

Автор gertrud

Ответов: 0
Просмотров: 1312
Последний ответ 24.02.2015, 17:54:12
от gertrud
Изменения при включении сайта с режима ра

Автор Marilik

Ответов: 0
Просмотров: 1401
Последний ответ 08.04.2014, 16:28:44
от Marilik
Проблема с ошибкой 500

Автор rdyu

Ответов: 19
Просмотров: 7773
Последний ответ 04.02.2014, 10:55:17
от GTAlex
Время сессии истекло, пожалуйста, авториз

Автор jem777

Ответов: 5
Просмотров: 4471
Последний ответ 27.09.2013, 17:20:28
от kaprikorn
Добавить mod rewrite

Автор bolach

Ответов: 1
Просмотров: 2020
Последний ответ 05.08.2013, 14:47:20
от bolach