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

green45

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Устройство шаблона Zappa
« : 06.02.2009, 13:16:38 »
Не могу разобраться, как придать определенный стиль параграфу. Может в английском не очень? На этой странице показаны примеры оформеленя с кодом http://www.joomlajunkie.com/demo/commercial/zappa/index.php?option=com_content&view=article&id=21&Itemid=50 , вот только не могу понять куда этот код помещать. Например, хочу, чтоб определенный параграф ограничивался сверху и снизу зелеными полосками. Беру этот код < p class="color-green" > и что потом? Куда его помещать и как?
*

green45

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Re: Устройство шаблона Zappa
« Ответ #1 : 07.02.2009, 07:44:49 »
Забавно, но совсем недавно этот шаблон был свободным, а сейчас там какая-то подписка требуется за деньгу. (успел скачать  ;D).
Однако по-прежнему не могу разобраться, как можно выделить параграф таким вот образом (прилагаю наглядный пример 8))

[вложение удалено Администратором]
*

green45

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Re: Устройство шаблона Zappa
« Ответ #2 : 08.02.2009, 09:46:29 »
Последовательность действий была такой. Выключил визуальный редактор в настройках Joomla и дальше начинаем работать с тегами. В результате, чтобы оформить параграф в цвете класса "инфо" нужен такой тег <p> class="info" >здесь мой текст</p>
Итак получилось.
Но по-прежнему не могу оформить теперь уже список. К этому шаблону для списка, в котором каждый пункт начинается с зеленой галочки, нужно это -> class "li-style1"
Однако запись типа <li class "li-style1" >тут текст моего первого пункта в списке</li> вывела на экран обычную точку вместо зеленой галки. В тегах я не шарю, но вроде делаю все логично. Поэтому помогите советом пожалуйста.
*

green45

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Re: Устройство шаблона Zappa
« Ответ #3 : 08.02.2009, 13:56:30 »
Погуглив, изучил слегка тег <li>

Все равно безрезультатно. Ни с параметром type, ни с параметром  list-style-type галки не появляются, т.е. сейчас у меня так

<li type="li-style1">пример1</li>
   <li>пример2</li>
   <li type="li-style1">пример3</li>

Еще есть в папке со стилями файл typography.css а в нем такой код

/*Lists Style
*****************************************/
jjPrimary ul, #jjSecondary ul {
   list-style-position: inside;
}
#jjPrimary ol, #jjSecondary ol {
   padding: 0;
   list-style-position: inside;
}
#jjPrimary ol li {
   padding: 2px 0 2px 5px;
}
#jjPrimary ul ul, #jjPrimary ul ul ul, #jjPrimary ul ul ul ul {
   margin-left: 25px;
}
#jjPrimary ol ol, #jjPrimary ol ol ol, #jjPrimary ol ol ol ol li, ul.li-style1, ul.li-style2, ul.li-style3, ul.li-style4 {
   padding-left: 2px;
   margin-left: 0;
}
ul.li-style1 li, ul.li-style2 li, ul.li-style3 li, ul.li-style4 li {
   list-style: none;
   margin-left: 0;
   padding-bottom: 3px;
   margin-bottom: 5px;
   padding-left: 21px;
   #padding-left: 8px;
}
ul.li-style1 li {
   background: url(../images/li-style1.jpg) no-repeat -1px 1px;
}
ul.li-style2 li {
   background: url(../images/li-style2.jpg) no-repeat 0px 2px;
}
ul.li-style3 li {
   background: url(../images/li-style3.jpg) no-repeat 0px 1px;
}
ul.li-style4 li {
   background: url(../images/li-style4.jpg) no-repeat 0px 1px;
}

Скажите что делать?
*

Wild Tiger

  • Захожу иногда
  • 179
  • 17 / 1
  • Сайты только на Joostina
Re: Устройство шаблона Zappa
« Ответ #4 : 08.02.2009, 14:28:59 »
не <p> class="info" >здесь мой текст</p>,
а <p class="info" >здесь мой текст</p>.

и не <li class "li-style1" >,
а <ul class="li-style1">.

у них же на сайте все расписано, открывай исходный код и смотри.
сушитель лампочек
*

green45

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Re: Устройство шаблона Zappa
« Ответ #5 : 08.02.2009, 15:48:56 »
Да с параграфом в посте я просто опечатался. А за список спасибо. Не догадался посмотреть исходный код страницы.
*

green45

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Re: Устройство шаблона Zappa
« Ответ #6 : 10.02.2009, 19:08:52 »
Надо в заглавие модуля вставить иконки. У Zappa в позиции user2 (это внизу страницы) можно вставить сразу до 4 модулей. Вот я хочу к каждому заголовку добавить какую нибудь иконку. Изначально было как на картинке pic1. Чтобы добавить иконки решил, что надо менять стили для модуля. Поэтому стал редактировать файл /templates/zappa/css/modules.css. Добавил туда такой код
<code>/*user2 module adjustments*/

#jjUser2 .moduletable-alt h3   {
   background-image: url(../images/myicon.png);
   background-repeat: no-repeat;

   background-position: 1% 50%;

   padding-left: 75px;

   margin: 10;

   padding: 10;

   line-height: 35px;

}





#jjUser2 .moduletable-alt ul li   {
   padding-left: 10px;
   margin: 10px;   

   list-style-type: none;

   border-top: 1px solid #FFF;

   line-height: 17px;

   border-bottom: 1px solid #E0EDEF;

   /*[disabled]height:24px;*/
}


#jjUser2 .moduletable-alt ul li a   {

   padding: 0 0 0 10px;

   color: inherit;

   display: block;

}

#jjUser2 .moduletable-alt ul li a:hover   {

   background: #ECF9FB;

   display: block;

} </code>
Затем в настройках каждого из трех модулей указал суффикс -alt. В результате у меня получилось как на картинке pic2. Не могу их выстроить в одну линию как было, чтобы по горизонтали шли друг за другом. Подскажите, что делать?

[вложение удалено Администратором]
*

bat

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Re: Устройство шаблона Zappa
« Ответ #7 : 07.10.2009, 05:55:54 »
может кто знает как заставить отображаться картинку с кроликом в шаблоне JJ Zappa и как (каким модулем) ее контролировать в последующем?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как вывести путь до шаблона с помощью API Joomla?

Автор elche

Ответов: 13
Просмотров: 15811
Последний ответ 11.09.2018, 23:48:50
от DK-Scorp
Стили шаблона

Автор karkan25

Ответов: 12
Просмотров: 4539
Последний ответ 21.05.2017, 16:40:32
от karkan25
Проблема с изменением логотипа штатного шаблона rhuk_milkyway Joomla_1.5

Автор Porohok

Ответов: 6
Просмотров: 4870
Последний ответ 22.03.2017, 10:34:23
от Porohok
Настройка неадаптивного шаблона

Автор Zegeberg

Ответов: 4
Просмотров: 4590
Последний ответ 21.06.2016, 00:21:06
от Zegeberg
Редактирование шаблона

Автор gdmitry

Ответов: 1
Просмотров: 4421
Последний ответ 04.06.2016, 20:25:32
от Taatshi