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

fortunik

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
alex_a_k, подскажите еще пожалуйста как сделать такую же конструкцию с if, тоесть если есть значение extra то вывести его если нет то не выводить. По типу:
Код
<?php if($Product->address && $ShowAddressInDetail){?>
<div class="details_field">
<?php echo JText::_('PROPERTIES_DETAIL_ADDRESS').': <b>'.$Product->address;?>
</b></div>
       <?php }?>
*

fortunik

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
И вдогонку еще вопросец, подскажите как убрать кнопки в списке обьектов (Задать вопрос, Подробнее)?
*

fortunik

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
DarkHacker, можете поделится поиском по этажам и не первый не последний?
*

Etnica

  • Захожу иногда
  • 95
  • 1 / 0
DarkHacker, можете поделится поиском по этажам и не первый не последний?
+1!
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
Если поменять гаражность на этажность, то получается, что в поиске будет выбор:
1 этаж
2 этажа
3 этажа
4 этажа
5 этажей и более.

А ведь такое небольшое количество этажей актуально только для частного строительства, но не для квартир.
Или цифры тоже можно поменять?

Я вот например хочу в основные параметры внести "удаленность от города", но цифры от 1 до 5 тут не очень актуальны.
Согласен.
Но здесь без изменения кода модуля поиска не обойтись.
Готового решения у меня нет, ибо у меня не было такой необходимости.
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
alex_a_k, подскажите еще пожалуйста как сделать такую же конструкцию с if, тоесть если есть значение extra то вывести его если нет то не выводить. По типу:
Код
<?php if($Product->address && $ShowAddressInDetail){?>
<div class="details_field">
<?php echo JText::_('PROPERTIES_DETAIL_ADDRESS').': <b>'.$Product->address;?>
</b></div>
       <?php }?>

Догадаться не сложно...
Код: php
<?php if($Product->extraX) echo JText::_('PROPERTIES_DETAIL_EXTRA_X').': '.$Product->extraX; ?>
« Последнее редактирование: 13.09.2013, 16:33:30 от alex_a_k »
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
И вдогонку еще вопросец, подскажите как убрать кнопки в списке обьектов (Задать вопрос, Подробнее)?

В настройках компонента использовать шаблон Default вместо Blue, либо самому убрать кнопки в файле шаблона /components/com_properties/views/property/tmpl/blue_item.php
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

DarkHacker

  • Осваиваюсь на форуме
  • 10
  • 2 / 0
На jooomla 2.5 не показывает параметры квартиры в описании (шаблон стандартный beez20). Хотя в настройках модуля стоят нужные галочки. Возможно из-за моей криворукости, но если кто-то столкнулся с такой же проблемой, почитайте.

Решение через одно место, но есть:

ищем components/com_properties/views/templates/list/default.php и components/com_properties/views/property/tmpl/default_item.php

Например что бы вывести цену в описании товара:

Ищем:
Код
if($ShowPriceInDetail)
И просто меняем на:
Код
if(!$ShowPriceInDetail)

Есть примеры по сложнее:
Показать какой либо параметр в подробном описании

Ищем:
Код
<?php if($Product->name_country && $ShowCountryInDetail){?>
И просто меняем на:
Код
<?php if($Product->name_country){?>

Не пинайте ногами мои кривые руки, возможно кому-то помог))
*

arxip32

  • Новичок
  • 6
  • 0 / 0
а у меня почему то не отображаются фото при просмотре и в панели управления маленьких изображение нет в списке объектов.Загрузились только 5 фотографии всего.
Что могло случиться?
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
а у меня почему то не отображаются фото при просмотре и в панели управления маленьких изображение нет в списке объектов.Загрузились только 5 фотографии всего.
Что могло случиться?

Не совсем понятно выводится только 5 или "не отображаются".
Опишите подробнее что видно в админке и что на сайте (можно скриншотами).

На счет 5 фоток...
В настройках компонента в закладке агенты есть опция "Кол-во изображений добавляемых агентами".
Поставьте там побольше.
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

arxip32

  • Новичок
  • 6
  • 0 / 0
Доброе утро. Покопался и нашел такую особенность. в папке images появляется фаил .htaaccess (или он там постоянно, но с другими данными).В нем прописано, что блокировать любой доступ. Причем уже второй раз такая проблема! На втором сайте.
Пока что решил удалением .htaaccess .

По вашим вопросам- выводится в видимость только 5-7 фото, причем непонятно какой алгоритм вывода, из разных объявлений фото. (видимость имею ввиду в админке можно посмотреть и на фронте)
Alex_a_k Спасибо за совет, попробую переставить на побольше.
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
Доброе утро. Покопался и нашел такую особенность. в папке images появляется фаил .htaaccess
Именно с таким именем .htaaccess (с двумя буквами "а")?

(или он там постоянно, но с другими данными).В нем прописано, что блокировать любой доступ.
Содержимое файла в студию!

Причем уже второй раз такая проблема! На втором сайте.
Пока что решил удалением .htaaccess.
Какие шаблоны используются? Платные или бесплатные? Откуда взяты, c официальных или варезных сайтов?

По вашим вопросам- выводится в видимость только 5-7 фото, причем непонятно какой алгоритм вывода, из разных объявлений фото. (видимость имею ввиду в админке можно посмотреть и на фронте)
Всё равно не догнал...
Скажите чётко, еслы вы загрузили 10 картинок, сколько видно в админке и на сайте?

Alex_a_k Спасибо за совет, попробую переставить на побольше.
Свисни потом, решилась ли так проблема.
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

zigman

  • Новичок
  • 4
  • 0 / 0
  • монстер
Мне для одного проекта нужно написать компонент шахматки - это графическая таблица как бы отображение дома
вот здесь пример http://rn66.ru/k98-flats.php

Вот смотрю на этот компонент, который здесь обсуждается вроде ничего так, есть регистрация заявок и все такое.

Или подскажите пожалуйста какой компонент подойдет под мои задачи.
Или кто сможет взяться за написание такое компонента ?
*

arxip32

  • Новичок
  • 6
  • 0 / 0
Именно с таким именем .htaaccess (с двумя буквами "а")?
Содержимое файла в студию!
Какие шаблоны используются? Платные или бесплатные? Откуда взяты, c официальных или варезных сайтов?
Всё равно не догнал...
Скажите чётко, еслы вы загрузили 10 картинок, сколько видно в админке и на сайте?
Свисни потом, решилась ли так проблема.
1. Ошибочка! - htaccess
2. Содержимое - Order Deny,Allow   Deny from all
3 Шаблоны либо демо, либо варезные. Фаил появился после установки и начала загрузки фото.ДО установки и загрузки фото в папке images его не было.
4.загрузили 5 картинок примерно, все хорошо, загружаем дальше и в процессе загрузили всего около 40-50 картинок. Первые 5 сразу загрузились, потом одна через 6-7 штук загружается. При 50 картинках и на сайте и в админке (в том числе и в миниатюрах) видны штук 7-8

На данный момент удалил файл, но все таки надо его подкорректировать, т.к. как я понимаю, он блокирует любой доступ к папке. Разрешить только на чтение.я про .htaccess
Пока что в процессе подгрузки, как загрузят, проверю обязательно отпишусь!
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
Мне для одного проекта нужно написать компонент шахматки - это графическая таблица как бы отображение дома
вот здесь пример http://rn66.ru/k98-flats.php
Вот смотрю на этот компонент, который здесь обсуждается вроде ничего так, есть регистрация заявок и все такое.
Или подскажите пожалуйста какой компонент подойдет под мои задачи.
"Всё такое", к сожалению, вряд ли подойдёт вам даже в "слегка приспособленном" штатном виде.

Или кто сможет взяться за написание такое компонента ?
Возможно... Удачи вам в поисках. Это вполне достижимо, но стоит денег...
« Последнее редактирование: 21.09.2013, 05:05:49 от alex_a_k »
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
1. Ошибочка! - htaccess
2. Содержимое - Order Deny,Allow   Deny from all
"Зуб даю", что это не может появиться от компонента скачанного здесь!
Как видно, у вас действительно проблемы!
Тем более что файл появляется в "общей" папке системы.
По началу его достаточно просто удалить.
А лучше замените содержимое этого файла на следующую запись:
Код
<Files ~ "\.(htm|html|php[2-6]?|phtml|phps|cgi|fcgi|exe|pl|fpl|shtm|shtml|asp|aspx|jsp|wml)$">
    Deny from all
</Files>
Это запретит выполнять ПОЧТИ ЛЮБОЙ код, но оставит возможность загружать из этой папки фотографии (что от нее и нужно).
Если после этого этот файл изменится - ищите шелл или что либо подобное, но это другая история.
Аудит сайтов на безопасность входит в мою компетенцию, но не в данной конкретной ситуации...

3 Шаблоны либо демо, либо варезные.
Судя по всему вы НИХЕРА не отдаёте себе отчёта о последствиях шага  - "либо варезные",
впрочем как и о шагах для "просто демо"...

Фаил появился после установки
Чего конкретно?

и начала загрузки фото. ДО установки и загрузки фото в папке images его не было.
Важна последовательность! У меня нет доступа к вашему сайту, чтобы проанализировать ваши "косяки"! Да и нафиг мне это не нужно!

4.загрузили 5 картинок примерно, все хорошо, загружаем дальше и в процессе загрузили всего около 40-50 картинок. Первые 5 сразу загрузились, потом одна через 6-7 штук загружается. При 50 картинках и на сайте и в админке (в том числе и в миниатюрах) видны штук 7-8
Простите, но бля буду, вы выражаетесь косноязычно!
Я ВСЁРАВНО НИХЕРА НЕ ПОНЯЛ!
5 картинок в одном объекте? Или вы грузите в 1 объект 40-50 фоток одновременно?
Какие первые 5 загружаются и где (в админке, на сайте)?
При 50-ти картинках в одном объекте не видны фото более 7-8 штук?
Короче полный МРАК, И ВАШПЕ НИФУЯ НИПАМЯТНО!

ВЫРАЖАЙТЕСЬ ЯСНЕЕ!
БЛЯ БУДУ, ПОВТОРЯЮ - ЭКСТРАСЕНСЫ В ОТПУСКЕ, ВЕЧНОМ!
А СТЕКЛЯННЫЙ ШАР МОЖЕТЕ ПОПРОБОВАТЬ САМИ!
Иначе я буду просто уходить в игнор!
ЛЮ-Ю-Ю-Ю-ДИ, Я ВСЕГДА ПЫТАЮСЬ ВАМ ПОМОЧЬ, НО ВЫ ПРОСТО УБИВАЕТЕ ЛЮБОЕ ЖЕЛАНИЕ СДЕЛАТЬ ЭТО!
Мне правда не понятны ваши вопросы! Прошу отвечать на них подробно, и как я прошу!
Если я спрашиваю В ДАННОМ СЛУЧАЕ что видно в админке и на сайте, то жду от вас ПОДРОБНОГО ответа о том, что получается когда вы загрузили, к примеру, по 15 картинок в каждый объект (при этом нужно подробно рассказать о том, сколько выводится в админке и сколько на сайте)?
И при этом опишите ПОДРОБНО что вы НЕ ОЖИДАЛИ увидеть на сайте и в админке и что по вашему работает там и там не правильно?
В ИДЕАЛЕ с подробным описанием и скриншотами, только тогда будет понятнее  (желательно с URL, можно в личку)!
А то я пытаюсь помочь, но в ответ получаю опять вязанку ВАШИХ ГОЛОВОЛОМОК и НЕПОНЯТНЫХ МНЕ проблем!
В ТАКОЙ СИТУАЦИИ Я НЕ СОБИРАЮСЬ ИХ РАЗГАДЫВАТЬ!
Уважайте пожалуйста чужое время!

На данный момент удалил файл, но все таки надо его подкорректировать, т.к. как я понимаю, он блокирует любой доступ к папке. Разрешить только на чтение.я про .htaccess
Пока что в процессе подгрузки, как загрузят, проверю обязательно отпишусь!
Либо просто удали, либо запиши в него то, что я описАл выше!

P.S. Надеюсь на ваше понимание, иначе всё превращается в это!
« Последнее редактирование: 21.09.2013, 06:58:38 от alex_a_k »
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

arxip32

  • Новичок
  • 6
  • 0 / 0
Многа букв)
В общем все равно большое спасибо за развернутые ответы, сделаю как вы и сказали.
Объяснил как могу, не спец в этих делах.
Сейчас все грузится, понять откуда htaccess появляется с вышеуказанным содержимым мне непонятно, может что то еще в процессе устанавливал.
Главное сейчас все хорошо, как забъем общую базу напишу как и что получилось. Вдруг у кого то такая же проблема будет.
PS.За видео огромное спасибо!) ржали)
« Последнее редактирование: 22.09.2013, 00:08:05 от arxip32 »
*

zigman

  • Новичок
  • 4
  • 0 / 0
  • монстер
"Всё такое", к сожалению, вряд ли подойдёт вам даже в "слегка приспособленном" штатном виде.
Возможно... Удачи вам в поисках. Это вполне достижимо, но стоит денег...


Само сабой за деньги. Нам нужны хорошие программеры за адекватную оплату.
*

Etnica

  • Захожу иногда
  • 95
  • 1 / 0

ВЫРАЖАЙТЕСЬ ЯСНЕЕ!
БЛЯ БУДУ, ПОВТОРЯЮ - ЭКСТРАСЕНСЫ В ОТПУСКЕ, ВЕЧНОМ!
А СТЕКЛЯННЫЙ ШАР МОЖЕТЕ ПОПРОБОВАТЬ САМИ!
Иначе я буду просто уходить в игнор!
Алекс, вы зря так эмоционально реагируете.
Мы задаем глупые вопросы, и не можем объяснить чего хотим, не для того, что бы вас позлить, а просто, потому что сами не знаем, как правильно объяснить то, в чем не разбираемся.
Глупо ждать от обывателей, что бы они разбирались в твоей специальности. Я вот например букинист, и вы не представляете, сколько раз я слышала фразу: «У меня есть очень старая книга, сколько она может стоить?». )))
Приходиться каждый раз терпеливо объяснять, что мне нужны автор, название, год издания, издательство, тираж, состояние и еще куча всего для ее оценки. А после этого еще более терпеливо объяснять, что макулатурные "Три мушкетера" не являются антиквариатом и не представляют никакой ценности. ))))
*

fortunik

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Подскажите или поделитесь если ктото заваял "подобные обьекты" в инфе об обьекте, или сделать хотя бы вывод нескольких случайных обьектов из той же категории и того же типа. Заранее благодарен.
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
Алекс, вы зря так эмоционально реагируете.
Мы задаем глупые вопросы, и не можем объяснить чего хотим, не для того, что бы вас позлить, а просто, потому что сами не знаем, как правильно объяснить то, в чем не разбираемся.
Глупо ждать от обывателей, что бы они разбирались в твоей специальности. Я вот например букинист, и вы не представляете, сколько раз я слышала фразу: «У меня есть очень старая книга, сколько она может стоить?». )))
Приходиться каждый раз терпеливо объяснять, что мне нужны автор, название, год издания, издательство, тираж, состояние и еще куча всего для ее оценки. А после этого еще более терпеливо объяснять, что макулатурные "Три мушкетера" не являются антиквариатом и не представляют никакой ценности. ))))

Вы правы, Анастасия.
Просто на тот момент я очень устал, не спав уже более 2-х суток.
Сами понимаете, нервозность, раздражительность, усталость...
Вот и победили меня эмоции, сорвался...
Приношу всем свои извинения!
Вы уж тоже не серчайте на меня.
Это недоразумение...
Меня просто занесло слегка, а так я добрый, пушистый и быстро отходчивый...
;)

Надеюсь на ваше понимание и снисхождение!
« Последнее редактирование: 23.09.2013, 12:21:15 от alex_a_k »
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
Подскажите или поделитесь если ктото заваял "подобные обьекты" в инфе об обьекте, или сделать хотя бы вывод нескольких случайных обьектов из той же категории и того же типа. Заранее благодарен.
Про "подобные" не знаю, а вот вывести несколько случайных из нужного типа и категории не проблема!
Используйте из шапки модифицированный МОДУЛЬ mod_prop_list_modded
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

fortunik

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
alex_a_k, я устанавливал все фиксы из первого поста. Подскажите если не трудно как настроить такой вывод?
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
alex_a_k, я устанавливал все фиксы из первого поста. Подскажите если не трудно как настроить такой вывод?
1. Для перестраховки поставьте ещё раз "повер" mod_prop_list_modded.
2. Добавьте этот МОДУЛЬ "Properties List" в нужной вам позиции на нужных страницах.
3. Настройте параметры модуля (тип, категория, количество, шаблон и т.д.)

В принципе этот модуль можно еще заменить штатным модулем карусели.
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

fortunik

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
alex_a_k, спасибо а как сделать их показ на страницах детального описания обьекта?
*

alex_a_k

  • Захожу иногда
  • 381
  • 21 / 0
alex_a_k, спасибо а как сделать их показ на страницах детального описания обьекта?
Весьма резонный вопрос, странно что его никто до сих пор не задавал! ;)
Итак раскрываю маленькие секреты (эх, скоро их совсем не останется)... 8)

Создаем новое меню (не ПУНКТ меню, а именно НОВОЕ меню). Оно нужно для служебных целей и нигде не будет выводится. Можете так его и обозвать - "Скрытое меню".
В нем создаем пункт типа "Show Property". В списке будет 3 одинаковых названия. Они отвечают за вывод подробностей объекта, формы для печати и файла PDF. Вычислить можно по окончанию получающейся ссылки - там будет либо &view=property либо &view=print или &view=pdf.
Нас интересует первый вариант. Обзываем этот пункт меню как-то типа "Подробности", "Детали" и т.п. и сохраняем.
Теперь это и будет раздел подробностей объекта. Теперь вы можете выводить в нем любые модули. ))

Удачной охоты!  :D
« Последнее редактирование: 15.08.2014, 17:05:53 от alex_a_k »
Не жмитесь на "+" в репу!
А так же на мелкий donate. ))
*

fortunik

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
У меня только 2 Show Property, и как раз не те что нужны, в чем может быть проблема?
*

fortunik

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
А нет, нашел)) сейчас буду пробывать шаманить. Спасибо за инфу.
*

alex_a_k

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

fortunik

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Не могу разобраться. А как подключить нужные модули к этому меню? Извиняюсь если задаю глупый вопрос, еще только осваиваю Joomla.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

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

Автор 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