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

masterincognyto

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Как самому переделать шапку Joomla?

Дело в том, что оригинальная шапка включает в себя рисунок (слева) mw_joomla_logo и место под модуль (например баннер). Я бы хотел убрать модуль и рисунок, а вместо них на всю шапку поставить простую надпись – название проекта.

Но все перерыл – не могу найти файл шапки, обычно он называется head  или вроде того, где и прописано то, что будет в шапке.

Кто может знает путь к этому файлу, подскажите. Благодарю.
*

Yurets

  • Захожу иногда
  • 405
  • 92 / 0
  • Губернатор острова Борнео
Re: Как самому переделать шапку Joomla?
« Ответ #1 : 18.09.2008, 14:03:02 »
templates/мой_шаблон/index.php
В комнате с белым потолком
*

oleggrz

  • Захожу иногда
  • 435
  • 76 / 3
  • Только начал учиться.
Re: Как самому переделать шапку Joomla?
« Ответ #2 : 18.09.2008, 14:19:03 »
А также templates/ваш_шаблон/css/template.css.css
*

masterincognyto

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Как самому переделать шапку Joomla?
« Ответ #3 : 18.09.2008, 14:20:40 »
Это путь по шаблону, а есть путь по скелету или здесь только по шаблону и других файлов шапки нет?

Благодарю.
*

masterincognyto

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Как самому переделать шапку Joomla?
« Ответ #4 : 18.09.2008, 14:22:15 »
А также templates/ваш_шаблон/css/template.css.css

Css проще править из админки, так же?
*

oleggrz

  • Захожу иногда
  • 435
  • 76 / 3
  • Только начал учиться.
Re: Как самому переделать шапку Joomla?
« Ответ #5 : 18.09.2008, 14:40:46 »
Css проще править из админки, так же?
Можно и из админки с помощью Joomla Explorer. Сами картинки лежат templates/ваш_шаблон/images. Пути даны от корня сайта.
*

masterincognyto

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Как самому переделать шапку Joomla?
« Ответ #6 : 18.09.2008, 15:16:20 »
Можно и из админки с помощью Joomla Explorer. Сами картинки лежат templates/ваш_шаблон/images. Пути даны от корня сайта.

Мне надо поправить сам шаблон - убрать слой с картинкой и место под модуль. Чтобы шапка была пуста, вот.
*

ART-DELI

  • Давно я тут
  • 801
  • 75 / 9
  • Не успеешь ты – сделают другие.
Re: Как самому переделать шапку Joomla?
« Ответ #7 : 18.09.2008, 15:45:10 »
В templates/мой_шаблон/index.php

Код
	<div id="header">
  &nbsp;
  </div>

Соответственно в  templates/ваш_шаблон/css/template_css
Код
#header {
float: left;
padding: 0px;
margin-right: 2px;
width: 635px;
height: 150px;
background: url(../images/header_short.jpg) no-repeat;
}
Соотвественно  ../images/header_short.jpg  - сама картинка

Убрать картинку, значит убрать в index.php все что связано с <div id="header">

Добавить новую позицию для модуля    <?php mosLoadModules ( 'пример', -2 ); ?>  в index.pxp


Код
<div id="пример">
<?php mosLoadModules ( 'пример', -2 ); ?>
</div>  
Соотвественно в  templates/ваш_шаблон/css/template_сss

Код
#пример {
float:
padding:
margin-right:
width:
height:

}


*

masterincognyto

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Как самому переделать шапку Joomla?
« Ответ #8 : 18.09.2008, 16:04:27 »
Ок, пойду пробовать...
*

dstudi

  • Осваиваюсь на форуме
  • 34
  • 1 / 1
Re: Как самому переделать шапку Joomla?
« Ответ #9 : 19.09.2008, 12:48:55 »
Зайди на:

http://www.destudio.com.ua/index.php?option=com_content&task=view&id=21&Itemid=

Все шаблоны  тянущиеся (Stretched) (ширина 100%)  + просто откроеш файл index.php  там всё я думаю станет понятно. (проще некуда)
*

masterincognyto

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Как самому переделать шапку Joomla?
« Ответ #10 : 19.09.2008, 15:27:17 »
Зайди на:

http://www.destudio.com.ua/index.php?option=com_content&task=view&id=21&Itemid=

Все шаблоны  тянущиеся (Stretched) (ширина 100%)  + просто откроеш файл index.php  там всё я думаю станет понятно. (проще некуда)


Да нет, вопрос был не в этом, меня устраивает стандартный шаблон.
*

masterincognyto

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Как самому переделать шапку Joomla?
« Ответ #11 : 20.09.2008, 12:16:58 »
Не нашел я эту строчку в  templates/ваш_шаблон/css/((

Цитировать
Код
#header {
float: left;
padding: 0px;
margin-right: 2px;
width: 635px;
height: 150px;
background: url(../images/header_short.jpg) no-repeat;
}

Но нашел:

<div id="header">
            <div id="header_l">
               <div id="header_r">
                  <div id="logo"></div>
                  <jdoc:include type="modules" name="top" />
               </div>
            </div>
         </div>

css


div#header_l {
   position: relative;
}

div#header_r {
   height: 90px;
   padding-left: 370px;
   padding-right: 30px;
   padding-top: 25px;
   overflow: hidden;
   text-align: left;
}

div#logo {
   position: absolute;
   left: 0;
   top: 0;
   float: left;
   width: 298px;
   height: 75px;
   background: url(../images/mw_joomla_logo.png) 0 0 no-repeat;
   margin-left: 30px;
   margin-top: 25px;
}

Преобразовать все так, чтобы получился один div с простым текстом не получется(( Модуль ломается и все…
*

ART-DELI

  • Давно я тут
  • 801
  • 75 / 9
  • Не успеешь ты – сделают другие.
Re: Как самому переделать шапку Joomla?
« Ответ #12 : 20.09.2008, 13:16:57 »
Так вырежете все div по header, и создать один свой.
*

masterincognyto

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Как самому переделать шапку Joomla?
« Ответ #13 : 20.09.2008, 13:47:47 »
Так вырежете все div по header, и создать один свой.

вот именно это я и пробовал делать - не выходит, модуль идет вкривь.
*

rob_992

  • Захожу иногда
  • 153
  • 6 / 0
Re: Как самому переделать шапку Joomla?
« Ответ #14 : 20.09.2008, 14:00:59 »
Я бы хотел убрать модуль
удали ето:                   <jdoc:include type="modules" name="top" />
Я бы хотел убрать ... и рисунок.
удали ето:      background: url(../images/mw_joomla_logo.png) 0 0 no-repeat;

авось и получится
*

masterincognyto

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Как самому переделать шапку Joomla?
« Ответ #15 : 20.09.2008, 14:54:14 »
удали ето:                   <jdoc:include type="modules" name="top" />удали ето:      background: url(../images/mw_joomla_logo.png) 0 0 no-repeat;

авось и получится

Нет, этого мало. Все дело где-то здесь:

<div id="header_l">
               <div id="header_r">

но где и как именно - я по не сообразил...
*

oleggrz

  • Захожу иногда
  • 435
  • 76 / 3
  • Только начал учиться.
Re: Как самому переделать шапку Joomla?
« Ответ #16 : 20.09.2008, 19:04:20 »
 Есть для Mozilla приложение Firebug .Там можно прямо в браузере менять стили, отключать, добавлять и смотреть что из этого выходит. Кроме того видно какие дивы какие позиции определяют.
« Последнее редактирование: 20.09.2008, 21:52:54 от oleggrz »

Re: Как самому переделать шапку Joomla?
« Ответ #17 : 12.07.2009, 14:51:49 »
У меня с шаблона название сайта убиралось вместе с картинкой, решение - visibility: hidden в template.css в классе logo.
*

kibkz

  • Новичок
  • 4
  • 0 / 0
  • полный чайник
Re: Как самому переделать шапку Joomla?
« Ответ #18 : 27.08.2009, 15:11:20 »
у меня проблема тож с шапкой.... поменял лого Joomla на свое , но после этого файл template.css в админке стал недоступен для записи... и не получается смеить лого еще раз, подскажите в чем проблема...
*

ART-DELI

  • Давно я тут
  • 801
  • 75 / 9
  • Не успеешь ты – сделают другие.
Re: Как самому переделать шапку Joomla?
« Ответ #19 : 27.08.2009, 19:05:20 »
Проверьте права на файл... template.css 775- надо
*

kibkz

  • Новичок
  • 4
  • 0 / 0
  • полный чайник
Re: Как самому переделать шапку Joomla?
« Ответ #20 : 28.08.2009, 12:55:54 »
гм..звините чайника а гдн проверить? в админке?
*

kibkz

  • Новичок
  • 4
  • 0 / 0
  • полный чайник
Re: Как самому переделать шапку Joomla?
« Ответ #21 : 28.08.2009, 13:24:51 »
спасибо разобрался..
*

kibkz

  • Новичок
  • 4
  • 0 / 0
  • полный чайник
Re: Как самому переделать шапку Joomla?
« Ответ #22 : 28.08.2009, 13:52:02 »
нет не разобрался...как поменять права на файлы на локальном сервере?
*

oleggrz

  • Захожу иногда
  • 435
  • 76 / 3
  • Только начал учиться.
Re: Как самому переделать шапку Joomla?
« Ответ #23 : 28.08.2009, 21:28:15 »
На локальном не меняются, права выставляются на unix-подобных системах.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Joomla! 1.6 не могу войти в админку

Автор stendapuss

Ответов: 3
Просмотров: 4900
Последний ответ 01.07.2017, 13:35:38
от stendapuss
Как переделать сайт, cозданный в Joomla Lavra Edition 2008 (1.0.15) на Joomla3x ?

Автор KrisKras

Ответов: 12
Просмотров: 5449
Последний ответ 21.02.2017, 15:15:17
от KrisKras
Восстановление управляемости сайта на Joomla 1.0.12 после обновления php до версии 5.5 и последовате

Автор galogen

Ответов: 6
Просмотров: 4773
Последний ответ 15.02.2017, 01:58:44
от Alex Revo
Joomla 1.0.15 и php 5.3.1

Автор lsk

Ответов: 36
Просмотров: 34759
Последний ответ 27.05.2016, 18:35:44
от Wertos
Кодировка Joomla lavra edition 2008

Автор evgen22

Ответов: 12
Просмотров: 6206
Последний ответ 22.08.2015, 14:26:24
от SeBun