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

Ligri

  • Новичок
  • 7
  • 0 / 0
Здравствуйте, подскажите плз, как в объекте вывести более 5 фото?
*

SergPro

  • Захожу иногда
  • 51
  • 0 / 0
Всем доброго дня!
Подскажите настройки поиска! Вы загрузили модуль, опубликовали, и у Вас по умолчанию в поиске уже есть выпадающее меню с сортировкой? Без мануала не могу понять почему у меня только три окошка (кнопка "SEND", окошко поиска и кнопка "показать результаты поиска")..... Как добавить сортировку? Если можно со скринами настройки модуля. Буду очень благодарен! Если благодаря Вашим усилиям у меня получиться справиться с модулем поиска с меня "магарыч"))))
С уважением!
*

Etnica

  • Захожу иногда
  • 95
  • 1 / 0
Можно!
Дополнение, позволяющее выводить список агентов можно скачать на форуме разработчика.

P.S. Добавлено в шапку.

Алекс, обычной установкой устанавливаю, Joomla пишет, что нет установочного пакета. Куда его поставить через ftp?
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
Алекс, обычной установкой устанавливаю, Joomla пишет, что нет установочного пакета. Куда его поставить через ftp?
Так точно!
После заливки появится возможность создать пункт меню "список агентов"
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
Не подскажете что делать, сначала были проблемы с галереей. фотки открывались в новом окне. исправил обновлением prettyPhoto, но теперь в детальном просмотре не работает поиск.
Брось ссылку в личку или мыло, я гляну.
Наверное конфликт в js...
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
Здравствуйте, подскажите плз, как в объекте вывести более 5 фото?
В настройках компонента в закладке агенты поставь побольше.
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
Всем доброго дня!
Подскажите настройки поиска! Вы загрузили модуль, опубликовали, и у Вас по умолчанию в поиске уже есть выпадающее меню с сортировкой?
При чем здесь соритовка. В модуле поиска нет никакой сортировки, там выпадающие селекты для выбора параметров фильтра.

Без мануала не могу понять почему у меня только три окошка (кнопка "SEND", окошко поиска и кнопка "показать результаты поиска")..... Как добавить сортировку? Если можно со скринами настройки модуля. Буду очень благодарен! Если благодаря Вашим усилиям у меня получиться справиться с модулем поиска с меня "магарыч"))))
Покажите сначала ваши скрины, а то я нифига не понял про "сортировку".
А лучше бросьте url в личку (если сайт не на локалке), я посмотрю.
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

Harconen

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
alex_a_k подскажите как сделать закладками описание товара фото и карту
http://jsfiddle.net/fHmN6/
*

Etnica

  • Захожу иногда
  • 95
  • 1 / 0
Так точно!
После заливки появится возможность создать пункт меню "список агентов"
Так он же не устанавливается! :( Говорит, " Не найден установочный XML-файл Joomla"
*

Harconen

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Так он же не устанавливается! :( Говорит, " Не найден установочный XML-файл Joomla"
на самом деле куда залить папку агент ?
« Последнее редактирование: 21.10.2013, 20:13:06 от Harconen »
*

legionnaire

  • Осваиваюсь на форуме
  • 20
  • 0 / 0
Здравствуйте, подскажите на странице товара косяченно отображается карта!
Координаты заданы, все фиксы в правильном порядке установлены!
В админке же при установке координат используется немного другая версия карты Google, и там всё работает нормально! Ну а на странице товара как вы видите, навигация не видна, да и какие то разрезки везде, даже назвать не знаю как)
*

Harconen

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Реально так и есть, хм...
Раньше кнопки "Select Category" не было, а Parent было обычным текстовым полем ввода.
Возможно автор исправил дистрибутив.
Лана, бум фиксить!

1. Фиксим глюк с невозможностью СБРОСИТЬ Parent в ТИПАХ недвижимости.
В файле /administrator/components/com_properties/models/forms/type.xml ищем
Код
		<field name="parent" 
type="ModalTypeParent"
label="Parent"
description="COM_PROPERTIES_FIELD_SELECTCATEGORY_DESC"
size="30"
default=""
required="true"
/>
Текст этого блока может немного отличаться, если у вас отсутствует кнопка "Select Category" или присутствуют еще какие-нибудь различия в этом поле (в частности может отличаться "type", отсутствовать "size", "default").
Мы тупо меняем на
Код
		<field name="parent"
type="productcategory"
label="Parent"
description="COM_PROPERTIES_FIELD_SELECTCATEGORY_DESC"
class="inputbox"
required="false"
/>
В результате поле превращается в выпадающий список, где можно либо выбрать нужную категорию, либо отказаться (выбрав первый пункт списка).

2. Фиксим глюк с невозможностью выбрать тип недвижимости в МЕНЮ "Properties List by Type".
В файле /administrator/components/com_properties/models/fields/producttype.php ищем строку
Код
		$query->where(' ( a.parent = 0 OR a.parent = ' . (int) $this->form->getValue('cid').')');
и комментируем ее
Код
//		$query->where(' ( a.parent = 0 OR a.parent = ' . (int) $this->form->getValue('cid').')');

И закомментировать строку в конце

Код
//	array_unshift($options, JHtml::_('select.option', '', JText::_('COM_PROPERTIES_SELECT_SELECTTYPE')));

Вроде все, пишите если что не так.
так ?
$query->where(' ( a.parent = 0 OR a.parent = ' . (int) $this->form->getValue('cid').')');
      array_unshift($options, JHtml::_('select.option', '', JText::_('COM_PROPERTIES_SELECT_SELECTTYPE')));
*

argut

  • Новичок
  • 1
  • 0 / 0
Добрый день. Написал в вам на почту с адреса   me.... info@gmail.com    посмотрите пож-ста.
*

Harconen

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Нет, там по ссылке можно скачать инфу об объекте в виде PDF файла.
Проблема действительно имеет место быть.
И так решение...
1. Качаем библиотеку tcpdf.zip и распаковываем содержимое архива в папку /components/com_properties/includes.

2. В файле /components/com_properties/views/pdf/view.html.php в 45 строке ищем
Код
require_once(JPATH_COMPONENT . DS . 'includes'. DS . 'tcpdf'. DS . 'config'. DS . 'lang'. DS . 'eng.php');
меняем в ней 'eng.php' на 'rus.php'
и ПЕРЕД ней добавляем строку
Код
ob_end_clean();

3. Учим кирилице - в этом же файле /components/com_properties/views/pdf/view.html.php ищем
Код
$pdf->SetFont('helvetica', '', 10);
и заменяем на
Код
$pdf->SetFont('freeserif', '', 10);

4. Убираем пустой lightbox - в файле \components\com_properties\views\property\tmpl\blue_item.php (иконка выводится только в этом шаблоне) ищем
Код
<a href="<?php echo $linkpdf ;?>" class="modal" rel="{handler: 'iframe', size: {x: 500, y: 600}}" title="<?php echo JText::_('Download Pdf');?>">
и заменяем на
Код
<a href="<?php echo $linkpdf ;?>" title="<?php echo JText::_('Download Pdf');?>">

5. В файле administrator/components/com_properties/config.xml найти
Код
<!--
<field name="iconPdfShow" type="radio" default="0" label="Show Pdf icon In Details" description="Show Pdf icon In Details?">
<option value="0">No</option>
<option value="1">Yes</option>
</field>
-->
убрать комментарии ("<!--" и "-->)", и в настройках компонента включаем появившуюся опцию "Show Pdf icon In Details"
(хотя я не уверен до конца в необходимости последнего пункта).

1. Качаем библиотеку tcpdf.zip и распаковываем содержимое архива в папку /components/com_properties/includes.

2. В файле /components/com_properties/views/pdf/view.html.php в 45 строке ищем
Код:
require_once(JPATH_COMPONENT . DS . 'includes'. DS . 'tcpdf'. DS . 'config'. DS . 'lang'. DS . 'eng.php');
меняем в ней 'eng.php' на 'rus.php'
и ПЕРЕД ней добавляем строку
Код:
ob_end_clean();
куда именно поставить ?
*

Анастасия85

  • Новичок
  • 6
  • 0 / 0
alex_a_krontEnd
Помоги сделать сайт недвижимости. Плиз.
« Последнее редактирование: 25.10.2013, 19:10:20 от Анастасия85 »
*

Анастасия85

  • Новичок
  • 6
  • 0 / 0
alex_a_k link
Ковыряюсь и ничего не получается (((, готова заплатить если поможешь создать сайт.
эл. aдрес eki-ata@yandex.ru Прошу писать только эл. почту. Не могу отвечать на личные сообщения в форуме ((((
Заранее спасибо.
« Последнее редактирование: 26.10.2013, 16:54:09 от Анастасия85 »
*

Анастасия85

  • Новичок
  • 6
  • 0 / 0
очень жду.
*

Анастасия85

  • Новичок
  • 6
  • 0 / 0
*

elvin

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
  • Я Тигръ!
автора темы просто не достучаться в лс!
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
alex_a_k подскажите как сделать закладками описание товара фото и карту
http://jsfiddle.net/fHmN6/
Готового решения нет.
Надо самостийно ручками править используемый шаблон вывода подробностей default_item.php или blue_item.php в папке /components/com_properties/views/property/tmpl/ согласно рекомендаций, указанных по вашей ссылке либо обращаться к фрилансерам.

Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
Здравствуйте!

Добрый день. Написал в вам на почту с адреса   me.... info@gmail.com    посмотрите пож-ста.

очень жду.

автора темы просто не достучаться в лс!

Извините за долгое отсутствие, так получилось...
Я снова с вами и рад вас всех видеть (в смысле читать) ))!

Всем ответил, со всеми связался.
« Последнее редактирование: 28.10.2013, 19:23:45 от alex_a_k »
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
на самом деле куда залить папку агент ?
Невнимательно читаете!

Цитировать
for Display Page List Agent Just Extract To ..../components/com_properties/views.
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
Здравствуйте, подскажите на странице товара косяченно отображается карта!
Координаты заданы, все фиксы в правильном порядке установлены!
В админке же при установке координат используется немного другая версия карты Google, и там всё работает нормально! Ну а на странице товара как вы видите, навигация не видна, да и какие то разрезки везде, даже назвать не знаю как)
Был такой глюк.
Насколько я помню проблема была с CSS шаблона (не утверждаю - давно было).
В элементах карты Google  и стилях шаблона использовались одноименные названия классов и ID и получалась такая мешанина.
Попробуй проверить на стандартном или отключай поочерёдно CSS твоего шаблона.
Если сработает, то вычисляй какие ID и классы нужно переименовать в CSS и шаблонах вывода.
« Последнее редактирование: 29.10.2013, 03:26:13 от alex_a_k »
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
так ?
$query->where(' ( a.parent = 0 OR a.parent = ' . (int) $this->form->getValue('cid').')');
      array_unshift($options, JHtml::_('select.option', '', JText::_('COM_PROPERTIES_SELECT_SELECTTYPE')));
Нет, нужно так

Код
// $query->where(' ( a.parent = 0 OR a.parent = ' . (int) $this->form->getValue('cid').')');
// array_unshift($options, JHtml::_('select.option', '', JText::_('COM_PROPERTIES_SELECT_SELECTTYPE')));
« Последнее редактирование: 28.10.2013, 19:24:30 от alex_a_k »
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
1. Качаем библиотеку tcpdf.zip и распаковываем содержимое архива в папку /components/com_properties/includes.

2. В файле /components/com_properties/views/pdf/view.html.php в 45 строке ищем
Код:
require_once(JPATH_COMPONENT . DS . 'includes'. DS . 'tcpdf'. DS . 'config'. DS . 'lang'. DS . 'eng.php');
меняем в ней 'eng.php' на 'rus.php'
и ПЕРЕД ней добавляем строку
Код:
ob_end_clean();
куда именно поставить ?

Неужели так сложно? >:-E
ПЕРЕД УКАЗАННОЙ СТРОКОЙ!
Т.е. вот так
Код
ob_end_clean();
require_once(JPATH_COMPONENT . DS . 'includes'. DS . 'tcpdf'. DS . 'config'. DS . 'lang'. DS . 'eng.php');
« Последнее редактирование: 28.10.2013, 21:28:41 от alex_a_k »
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

diy05

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
alex_a_k , здравствуйте!

продублирую вопрос
Никак не хочет переводить "краткое описание"
Т.е. я пишу в нужное поле текст на английском, но он мне все равно это поле выдает из русской версии почему-то...
Можете поинтересоваться у юзера, кто успешно сделал перевод?

И еще в догонку тут проблемка возникла - забил я на JoomFish, из-за долбанутого префикса ru, который ни в какую не хотел убираться из url и сделал перевод стандартными средствами Joomla
Все вроде бы хорошо, НО не перекидывает в нужный объект при смене языка,
т.е. например http://kvartiry.sorrero.ru/arenda-kvartir/v-tsentre-goroda.html
по идее должно сюда перекидывать http://kvartiry.sorrero.ru/en/arenda-kvartir/v-tsentre-goroda.html ,
но вместо этого выкидывает сюда http://kvartiry.sorrero.ru/en/arenda-kvartir.html,
и такое именно только с объектами, а все пункты меню работают как нужно
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
alex_a_k , здравствуйте!

продублирую вопрос
И еще в догонку тут проблемка возникла - забил я на JoomFish, из-за долбанутого префикса ru, который ни в какую не хотел убираться из url и сделал перевод стандартными средствами Joomla
Все вроде бы хорошо, НО не перекидывает в нужный объект при смене языка,
т.е. например http://kvartiry.sorrero.ru/arenda-kvartir/v-tsentre-goroda.html
по идее должно сюда перекидывать http://kvartiry.sorrero.ru/en/arenda-kvartir/v-tsentre-goroda.html ,
но вместо этого выкидывает сюда http://kvartiry.sorrero.ru/en/arenda-kvartir.html,
и такое именно только с объектами, а все пункты меню работают как нужно
Хм...
Мне сложно судить о проблемах перевода контента, поскольку у меня совершенно нет опыта - не приходилось пользоваться.
Разве только один раз цеплял к сайту по просьбе клиента языки через Google Transtalor. Но это совсем другой момент.
Даже не знаю как вам помочь...
Если хотите, то помогу вам связаться с человеком, который использует JoomFish с компонентом, может он что подскажет?
« Последнее редактирование: 29.10.2013, 11:52:03 от alex_a_k »
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

Bazilio

  • Осваиваюсь на форуме
  • 47
  • 2 / 0
Доброе время суток всем. Вопрос, кто то натягивал этот компонент на адаптивный шаблон? У меня ничего не выходит, при изменении размера окна браузера всё съезжает в сторону. Специально выбрал такой шаблон, а компонент не ложится как надо. Как его привязать к шаблону? Показать свой сайт не могу - он на локалке, но бардак такой же как и на этом сайте :
http://www.domik-na-uge.ru/kvartiry?cid=1&tid=2. Кстати сайт по ссылке принадлежит участнице этой темы, той что с мотоциклом.

И ещё, как отвязатся от номера референции, очень уж он бестолковый. Мне свои удобней вставлять, в них понятно откуда и какого типа объект. Может это где то отключается, я пока не нашёл.
« Последнее редактирование: 30.10.2013, 07:10:53 от Bazilio »
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
И ещё, как отвязатся от номера референции, очень уж он бестолковый. Мне свои удобней вставлять, в них понятно откуда и какого типа объект. Может это где то отключается, я пока не нашёл.

В файле /administrator/components/com_properties/models/forms/product.xml ищем в строку
Цитировать
<field name="ref" type="text" label="COM_PROPERTIES_FIELD_REFERENCE_LABEL" description="COM_PROPERTIES_FIELD_REFERENCE_DESC" class="inputbox" size="30" disabled="true" />
и удаляем в ней disabled="true".
Теперь Ref можно вводить самому, а если оставить пустым, то при сохранении он сгенерируется автоматически.

P.S. Добавлено в шапку.
« Последнее редактирование: 11.11.2013, 15:29:20 от alex_a_k »
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
Доброе время суток всем. Вопрос, кто то натягивал этот компонент на адаптивный шаблон? У меня ничего не выходит, при изменении размера окна браузера всё съезжает в сторону. Специально выбрал такой шаблон, а компонент не ложится как надо. Как его привязать к шаблону? Показать свой сайт не могу - он на локалке, но бардак такой же как и на этом сайте :
http://www.domik-na-uge.ru/kvartiry?cid=1&tid=2. Кстати сайт по ссылке принадлежит участнице этой темы, той что с мотоциклом.

Выложи скриншоты и укажи что не так.
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Анплюс Недвижимость: Готовый сайт для агентства недвижимости

Автор howks

Ответов: 40
Просмотров: 16422
Последний ответ 27.08.2025, 14:05:29
от howks
PPF 3 – компонент для продажи электронных товаров

Автор varX

Ответов: 0
Просмотров: 3038
Последний ответ 20.08.2022, 20:22:19
от varX
Импорт YML в Joomla 4

Автор Вадим НН

Ответов: 6
Просмотров: 3531
Последний ответ 11.07.2022, 11:35:15
от Вадим НН
Компонент недвижимости OS Property

Автор Ingener

Ответов: 110
Просмотров: 42177
Последний ответ 01.08.2021, 02:02:37
от cepseu
Систему биллинга для Joomla

Автор timofe

Ответов: 0
Просмотров: 3385
Последний ответ 23.03.2021, 14:00:52
от timofe