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

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Вот:
Спойлер
[свернуть]
А вот сайт на котором все выполнено по такому же принципу один в один, только там с изображениями все ок.
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Re: Не переносятся изображения
« Ответ #1 : 14.09.2014, 19:27:02 »
Изображения перенесли в правильную папку? /components/com_jshopping/files/img_attributes
*

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Re: Не переносятся изображения
« Ответ #2 : 14.09.2014, 20:40:05 »
Изображения перенесли в правильную папку? /components/com_jshopping/files/img_attributes
Я сделал все также как и тут, я сделал так как мне сказал верстальщик
"[04.07.2014 4:20:18] Игорь:в корневой папке сайта
[04.07.2014 4:20:18] Игорь: есть папка images
[04.07.2014 4:20:23] Игорь: прямо туда кидаете фотографии
[04.07.2014 4:20:32] Игорь: не меняйте имена
[04.07.2014 4:20:36] Игорь: не создавайте вложеных папко"
А сейчас верстальщик пропал совсем, посоветоваться не с кем кроме как на форуме.
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Re: Не переносятся изображения
« Ответ #3 : 15.09.2014, 11:26:02 »
Это фото атрибутов, они должны находится по пути  как я указал, ну по крайней мере в Jshopping.
Может ви закинули их в корневую папку джумли или сюда /components/com_jshopping/images
Хотя кто знает что там ваш верстальщик наверстал!)
*

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Re: Не переносятся изображения
« Ответ #4 : 16.09.2014, 00:03:18 »
Это фото атрибутов, они должны находится по пути  как я указал, ну по крайней мере в Jshopping.
Может ви закинули их в корневую папку джумли или сюда /components/com_jshopping/images
Хотя кто знает что там ваш верстальщик наверстал!)
Вот какие пути прописаны
Спойлер
[свернуть]
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Re: Не переносятся изображения
« Ответ #5 : 16.09.2014, 00:10:18 »

смотреть надо, гадать не получится.
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: Не переносятся изображения
« Ответ #6 : 16.09.2014, 01:48:56 »
Могу предположить что что пути прописаны прямым адресом http://site.ru/......, а не <?php echo JURI::base();?>, у меня такое часто бывает когда пишу localhost/site/... А еще фишка в том что у меня то они грузятся, а у других нет...)) Поэтому вспомнить проблему получается не сразу..
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Re: Не переносятся изображения
« Ответ #7 : 17.09.2014, 16:35:11 »
Могу предположить что что пути прописаны прямым адресом http://site.ru/......, а не <?php echo JURI::base();?>, у меня такое часто бывает когда пишу localhost/site/... А еще фишка в том что у меня то они грузятся, а у других нет...)) Поэтому вспомнить проблему получается не сразу..
Нет, вы ошибаетесь, я ставил новый шаблон и изображения не грузились, потом возвращал старый шаблон и изображения грузились на одном и том же доменном имени.
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Re: Не переносятся изображения
« Ответ #8 : 18.09.2014, 11:20:51 »
Нет, вы ошибаетесь, я ставил новый шаблон и изображения не грузились, потом возвращал старый шаблон и изображения грузились на одном и том же доменном имени.
Так может проблема то в шаблоне?
*

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Re: Не переносятся изображения
« Ответ #9 : 18.09.2014, 17:26:26 »
Так может проблема то в шаблоне?
хм, а что именно с шаблоном мб не так? В принципе вы мне подкинули идею, попробую еще какой нибудь шаблон поставить.
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: Не переносятся изображения
« Ответ #10 : 18.09.2014, 17:38:25 »
Вообще то, пути в шаблонах прописываются, а не там где вы возможно думали..
Тут как бы и думать нечего, на каких страницах у вас картинки не грузятся?

У вас вообще в новом шаблоне отсутствует "src" т.е. изображение и не будет грузиться..

Новый шаблон: <img id="listone" alt="" style="margin-top: -10px;">
Старый шаблон: <img alt="" id="listone" style="margin-top: -10px;" src="/images/bronze_5.png">

Воспользуйтесь поиском по файлам, и исправьте..)
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Re: Не переносятся изображения
« Ответ #11 : 18.09.2014, 18:33:40 »
Вообще то, пути в шаблонах прописываются, а не там где вы возможно думали..
Тут как бы и думать нечего, на каких страницах у вас картинки не грузятся?

У вас вообще в новом шаблоне отсутствует "src" т.е. изображение и не будет грузиться..

Новый шаблон: <img id="listone" alt="" style="margin-top: -10px;">
Старый шаблон: <img alt="" id="listone" style="margin-top: -10px;" src="/images/bronze_5.png">

Воспользуйтесь поиском по файлам, и исправьте..)
Подскажите, что тут нужно исправить?
Спойлер
[свернуть]
Так может проблема то в шаблоне?

В общем тесты показали что шаблон тут не причем. Изображения подгружаются только на одном сайте и не на каком другом больше шаблоне не подгружаются. Я даже пробовал поставить такой же шаблон на котором подгружаются сейчас изображения, только поставил его по новому и изображения не подгружаются. Зато когда я перенес этот сайт на денвер, все замечательно подгружалось, только на активном шаблоне, фишка в том что там скрипт какой то и прописаны настройки мб в этих настройках дело? Ибо я верстальщику давал файлы и бд, но верстальщик когда выполнил работу дал только 1 файл и изображения. Т е все прописано в одном файле.
« Последнее редактирование: 18.09.2014, 18:51:35 от Jokerrs »
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: Не переносятся изображения
« Ответ #12 : 18.09.2014, 18:50:13 »
Ничего, возможно у вас jquery не подключен, или не та версия.
В том файле все верно написано, должно работать.
Попробуйте в коде изменить все символы $ на jQuery..
« Последнее редактирование: 18.09.2014, 18:54:27 от shurakana »
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Re: Не переносятся изображения
« Ответ #13 : 18.09.2014, 18:54:23 »
Ничего, возможно у вас jquery не подключен, или не та версия...
Вот видите этот сайт, я его переносил на денвер, и на нем же устанавливал другой шаблон и после установки нового шаблона изображения отказываются подгружаться.
Или же jquery подключается к шаблону?
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: Не переносятся изображения
« Ответ #14 : 18.09.2014, 18:54:55 »
Вот видите этот сайт, я его переносил на денвер, и на нем же устанавливал другой шаблон и после установки нового шаблона изображения отказываются подгружаться.
Написал выше
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Re: Не переносятся изображения
« Ответ #15 : 18.09.2014, 18:55:26 »
Написал выше
jquery подключается к шаблону?
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: Не переносятся изображения
« Ответ #16 : 18.09.2014, 18:56:28 »
jquery подключается к шаблону?

Замените все символы $ на jQuery
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Jokerrs

  • Захожу иногда
  • 94
  • 0 / 0
Re: Не переносятся изображения
« Ответ #17 : 18.09.2014, 20:32:45 »
Замените все символы $ на jQuery
да Вы, просто бог! Долго пытался подключить jQuery от Google к шаблону и ничего не получалось, главное на другом шаблоне этот же jQuery подключается без проблем, а на этом нифига. Ну да ладно, фиг с ним, заменил все символы  $ на jQuery, и вуаля, все работает! Как говорится, кто ищет - тот всегда найдет!
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: Не переносятся изображения
« Ответ #18 : 18.09.2014, 20:49:09 »
Как говорится, кто ищет - тот всегда найдет!
Молодец, нашел.. ;D

Если бы вы сразу полностью выложили код, все подробно рассказали, какой шаблон меняете и пр.. То проблема бы решилась практически сразу..
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Плагин - Наложение маски на изображения объектов JoomShopping [Скачать]

Автор kit2m2

Ответов: 5
Просмотров: 4317
Последний ответ 20.09.2022, 11:51:02
от kit2m2
Удаление изображения категории внутри категории

Автор Concolor

Ответов: 34
Просмотров: 3706
Последний ответ 10.04.2021, 18:11:02
от Concolor
Описание товара справа от изображения в карточке товара

Автор sifoz

Ответов: 15
Просмотров: 6699
Последний ответ 01.01.2021, 14:27:56
от nevigen
Смена изображения при наведении в карточке товара

Автор Dolphin4ik_1

Ответов: 0
Просмотров: 1062
Последний ответ 18.02.2019, 15:30:52
от Dolphin4ik_1
Не могу нормально настроить увеличение изображения в lightbox

Автор seralex

Ответов: 6
Просмотров: 1042
Последний ответ 02.11.2018, 15:39:51
от seralex