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

baga_128

  • Захожу иногда
  • 53
  • 0 / 0
Маркеры
« : 21.07.2009, 11:46:25 »
Перестали отображаться маркеры в контенте сайта. :( Что делать? Что нужно настроить в ксс? На всякий случай вот вам мой ксс:

.dir {direction:ltr;}
body {direction:ltr;}
td, tr, p, div {
  font-family      : tahoma;
  font-size        : 12px;
  color            : #020A75;
}

hr {
  background       : #CCCCCC;
  height           : 1px;
  width            : 100%;
}
.boxes {
        border: solid;
        border: dotted;
        border-width: 1px;
        border-bottom-color: #B0C4DE;
        border-top-color: #B0C4DE;
        border-left-color: #B0C4DE;
        border-left-color: #B0C4DE;
}

.title {
   font-family: tahoma;
   font-size: 12px;
   font-weight: bold;
   color   : #4490B4;
}
.title-red {
   font-family: tahoma;
   background-image:url(../images/alert.png);
   background-position:left;
   background-repeat:no-repeat;
   height:26px;
   font-size: 11px;
   font-weight: bold;
   color:#FF0000;
   padding-top:7px;
   padding-left:25px;
}
.heading {
font-family: Tahoma;
font-size: 11px;
font-weight: bold;
color            : #4490B4;
background-color:#EAEAFF;
}
.name {
font-family: Tahoma;
font-size: 11px;
font-weight: bold;
color            : #4490B4;
background-color:#EAEAFF;
}
.pathway {
  font-family: tahoma;
  font-size: 11px;
  color: #666666;
}

a.pathway:link, a.pathway:visited {
  color            : #ffffff;
  font-weight      : normal;
}

a.pathway:hover {
  color            : #ffffff;
  font-weight      : normal;
  text-decoration  : underline;
}

/* --Default Class Settings-- */

/* Start Sub Level For Menu*/
#menu1_img img
{display:block;
position:absolute;
margin-left:40px;

}

a.sublevel1:link, a.sublevel1:visited {
        color: #333333;
        background-position: left;
        text-align: left;
        font-weight: bold;
      background-image:url(../images/sub1.png);
      background-repeat:no-repeat;
      height:33px;
      padding-top:8px;
      padding-left:28px;
      width:160px;

 }

a.sublevel1:hover {
        color: #4490B4;
        background-position: left;
      background-image:url(../images/sub1.png);
        text-align: left;
        }
a.sublevel2:link, a.sublevel2:visited {
        color: #333333;
        background-position: left;
        text-align: left;
        font-weight: bold;
      background-image:url(../images/sub2.png);
      background-repeat:no-repeat;
      height:33px;
      padding-top:8px;
      padding-left:42px;
      width:160px;

 }

a.sublevel2:hover {
        color: #4490B4;
        background-position: left;
      background-image:url(../images/sub2.png);
        text-align: left;
        }
a.sublevel3:link, a.sublevel3:visited {
        color: #333333;
        background-position: left;
        text-align: left;
        font-weight: bold;
      background-image:url(../images/sub3.png);
      background-repeat:no-repeat;
      height:33px;
      padding-top:8px;
      padding-left:58px;
      width:160px;

 }

a.sublevel3:hover {
        color: #4490B4;
        background-position: left;
      background-image:url(../images/sub3.png);
        text-align: left;
        }
a.sublevel4:link, a.sublevel4:visited {
        color: #333333;
        background-position: left;
        text-align: left;
        font-weight: bold;
      background-image:url(../images/sub4.png);
      background-repeat:no-repeat;
      height:33px;
      padding-top:8px;
      padding-left:68px;
      width:160px;

 }

a.sublevel4:hover {
        color: #4490B4;
        background-position: left;
      background-image:url(../images/sub4.png);
        text-align: left;
        }
a.sublevel5:link, a.sublevel5:visited {
        color: #333333;
        background-position: left;
        text-align: left;
        font-weight: bold;
      background-image:url(../images/sub5.png);
      background-repeat:no-repeat;
      height:33px;
      padding-top:8px;
      padding-left:78px;
      width:160px;

 }

a.sublevel5:hover {
        color: #4490B4;
        background-position: left;
      background-image:url(../images/sub5.png);
        text-align: left;
        }
/* End Sub Level For Menu*/
a.mainmenu:hover, {
        color: #4490B4; text-decoration: underline;

        }
a.mainmenu:link, a.mainmenu:visited {
        color: #ffffff; font-family: tahoma;
        font-weight: bold;

        }

a.sublevel:hover {
        text-decoration: underline;
        }

a.sublevel:link, a.sublevel:visited {
        display:block;
        color: #ffffff;
        padding-left:53px;
        padding-right:5px;
      background-image:url(../images/2.png);
        font-family: tahoma;
        font-weight: normal;
        margin-left:-4px;
        margin-right:2px;

}
a.sublevel:active {
        color: #ffffff;
}



table.moduletable_opros {
        width: 169px;
      background-image:url(../images/bot_mod.png);
      background-repeat:no-repeat;
      background-position:bottom;
      padding-bottom:0px;
        }

table.moduletable_opros th {
  width: 169px;
  height:13px;
  font-size        : 11px;
  display         :block;
  font-weight      : bold;
  color            : #ffffff;
  text-align       : center;
  background-image:url(../images/top_mod.png);
  background-repeat:no-repeat;
  background-position:bottom;


}

table.moduletable_mainmenu {
        width: 169px;
        height:48px;
      background-image:url(../images/bot_mod2.png);
      background-repeat:no-repeat;
      background-position:left;
      padding-bottom:0px;
      padding-left:-5px;
        margin-right:-3px;

        }

table.moduletable_mainmenu th {
  width: 169px;
  height:2px;
  font-size        : 0.5px;
  display         :block;
  font-weight      : normal;
  color            : #375589;
  text-align       : left;
  background-image:url(../images/top_main.png);
  background-repeat:no-repeat;
  background-position:left;
  padding-top:0px;
  margin-bottom:-1px;

}


table.moduletable_online {
        width: 169px;
      background-image:url(../images/bot_mod.png);
      background-repeat:no-repeat;
      background-position:bottom;
      padding-bottom:20px;

        }

table.moduletable_online th {
  width: 169px;
  height:13px;
  font-size        : 11px;
  display         :block;
  font-weight      : bold;
  color            : #020A75;
  text-align       : center;
  background-image:url(../images/top_mod.png);
  background-repeat:no-repeat;
  background-position:top;


}

td.moduletable {
        font-weight: normal;
      background-color:#00FF00;
        }
table.moduletable td {
        font-size: 12px;
        font-weight: normal;
        }

.poll {
  font-family      : tahoma;
  font-size        : 11px;
  color            : #666666;
  text-align       : center;
  line-height      : 12px;

}


.sectiontableheader {

  color            : #4490B4;
  background-color:#F4F4F4;
  font-weight      : bold;
}

.sectiontablefooter {

  color            : #4490B4;
  background-color:#F4F4F4;
}
.sectiontableentry1 {
background-color:#F9F9FF;
}

.sectiontableentry2 {
background-color:#ECECFF;

}


.small {
  font-family      : tahoma;
  font-size        : 11px;
  color            : #3366C0;
  text-decoration  : none;
  font-weight      : medium;
}

.smalldark {
  font-family      : tahoma;
  font-size        : 11px;
  color            : #666666;
  text-decoration  : none;
  font-weight      : normal;
}


.contentpane {
font-weight: normal;


}

.contentpaneopen {
font-weight: normal;
font-size:11px;
margin-top:4px;
}

.contentheading {
  font-family      : tahoma;
  font-size        : 12px;
  font-weight      : bold;
  color            : #020A75;
  text-align       : left;
  padding-bottom:5px;
  margin-top:10px;

}
.componentheading {
  font-family      : tahoma;
  font-size        : 12px;
  font-weight      : bold;
  color            : #020A75;
  text-align       : left;
  padding-bottom:5px;
  margin-top:10px;
}
.createdate {
  font-family      : tahoma;
  font-size        : 11px;
  color            : #999999;
  text-align       : left;
}


.button {
  font-family      : tahoma;
  font-style       : normal;
  font-size        : 12px;
  font-weight      : bold;
  background-color : #ffffff;
  color            : #020A75;
  border           : 1px solid #CCCCCC;
  margin-top:3px;
  width:90px;
}
.button2 {
  font-family      : tahoma;
  font-style       : normal;
  font-size        : 11px;
  font-weight      : bold;
  background-color : #ffffff;
  color            : #666666;
  width:85px;
  height:25px;
  border           : 1px solid #CCCCCC;
}

.inputbox {
   BORDER-RIGHT: 1px solid #CCCCCC;
   BORDER-TOP: 1px solid #CCCCCC;
   FONT-SIZE: 8pt;
   BORDER-LEFT: 1px solid #CCCCCC;
   BORDER-BOTTOM: 1px solid #CCCCCC;
   FONT-FAMILY: Tahoma;
}
.inputbox2 {
   BORDER-RIGHT: 1px solid #CCCCCC;
   BORDER-TOP: 1px solid #CCCCCC;
   FONT-SIZE: 8pt;
   BORDER-LEFT: 1px solid #CCCCCC;
   BORDER-BOTTOM: 1px solid #CCCCCC;
   FONT-FAMILY: Tahoma;
   width:135px;
}

.inputbox-nav {
   BORDER-RIGHT: 1px solid #CCCCCC;
   BORDER-TOP: 1px solid #CCCCCC;
   FONT-SIZE: 10pt;
   BORDER-LEFT: 1px solid #CCCCCC;
   BORDER-BOTTOM: 1px solid #CCCCCC;
   FONT-FAMILY: Tahoma;
   width:180px;

}


/* For content item titles that are hyperlink instead of Read On */
a.contentpagetitle:link, a.contentpagetitle:visited {
   font-family: Tahoma;
   font-size: 11px;
   font-weight: bold;
    color: #666666;
   padding-left:9px;
   background-image:url(../images/arrow.png);
   background-repeat:no-repeat;
   background-position:left;
   line-height:140%;
}

a.contentpagetitle:hover {
   font-family: Tahoma;
   font-size: 11px;
   font-weight: bold;
   text-align:left;
   color: #020A75;
   text-decoration:blink;
   font-weight: bold;
   padding-left:7px;

   }

a.category:link, a.category:visited {
  color            : #333333;
  font-weight      : bold;
  width:100%;
  background-color:#E3FECB;
}

a.category:hover {
  color            : #4490B4;
}

/* Styles for dhtml tabbed-pages */
.ontab {
   background-color: #ffae00;
   border-left: outset 2px #ff9900;
   border-left: outset 2px #808080;
   border-top: outset 2px #ff9900;
   border-bottom: solid 1px #d5d5d5;
   text-align: center;
   cursor: hand;
   font-weight: bold;
   color: #FFFFFF;
}
.offtab {
   background-color : #e5e5e5;
   border-left: outset 2px #E0E0E0;
   border-left: outset 2px #E0E0E0;
   border-top: outset 2px #E0E0E0;
   border-bottom: solid 1px #d5d5d5;
   text-align: center;
   cursor: hand;
   font-weight: normal;
}
.tabpadding {
}

.tabheading {
   background-color: #ffae00;
   text-align: left;
}

.pagetext {
   visibility: hidden;
   display: none;
   position: relative;
   top: 0;
}

/* for modifying {zancode} output.  Don't set the colour! */
.zancode {
   background-color: #f0f0f0;
}

/* Text passed with zanmsg url parameter */
.message {
   font-family : tahoma;
   font-weight: bold;
   font-size : 11px;
   color : #ff6600;
   text-align: center;
}
.latestnews-nav {
            width:100%;
            padding-left:5px;
            color:#6693A1;
            background-image:url(../images/arrow.png);
            background-repeat:no-repeat;
            background-position:left;
            padding-left:10px;
            line-height:190%;
}
ul#mainlevel-nav {
   list-style      : none;
   padding         : 0;
   margin         : 0;
   text-align:center;
}

ul#mainlevel-nav li
{
   float         : left;
   white-space      : nowrap;
}
ul#mainlevel-nav li a:hover
{
   color: #FFFFFF;
}

a.mainlevel-nav:link, a.mainlevel-nav:visited {
   list-style      : none;
   color:#00FF00;
   font-size:11px;
   font-weight:bold;
   padding-left:15px;
   padding-right:25px;
   height:100%;
   line-height:29px!important;
   }
table.moduletable-nav { width:100%;}
#active_menu{
   color:#FFFFFF;
}
.highlight {
   background-color:#FFCC00;
   font-weight:bold;
}
.level_0 { padding-left:25px;
         list-style-image:url(../images/arrow.png);
         line-height:180%;
}
.level_1 { padding-left:35px;
}
.level_2 { padding-left:45px;
}
.level_3 { padding-left:55px;
}
.register{
      width:137px;
      background-image:url(../images/register.png);
      background-repeat:no-repeat;
      background-position:left;
      height:29px;
      text-align:center;
      font-weight:bold;
      padding-top:7px;
}
.forget{
      width:137px;
      background-image:url(../images/forget.png);
      background-repeat:no-repeat;
      background-position:left;
      height:29px;
      text-align:center;
      font-weight:bold;
      padding-top:7px;
}
.gallery-menu{
      width:94px;
      height:24px;
      background-image:url(../images/gtitle.png);
      text-align:center;
      padding-top:4px;
}
table.directory {
             color: #000033;
             background-color: #F4F4F4;
         }

.grayb {
             background-color: #f8f8f8;
         }

table.directory td {
             font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
             font-size: 8pt;
             font-weight: normal;
         }

table.directory th {
             font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
             font-size: 8pt;

             background-color: #F4F4F4;
            color: #666666;
             font-weight:bold;
         }
.directorypath {
             font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
             font-size: 8pt;
             font-weight: bold;

            color: gray;
             background-color:#f2f2f2 ;

         }
.smallgm {
             font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
             font-size: 7pt;
            color: red;
         }
.smallgsm {
             font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
             font-size: 7pt;
            color: green;
         }
a.subcat {font-weight:bold;
}
a.next {
      width:94px;
      height:24px;
      background-image:url(../images/next.png);
      text-align:center;
      padding-top:4px;
}
a.last {
      width:94px;
      height:24px;
      background-image:url(../images/last.png);
      text-align:center;
      padding-top:4px;
}
li {

         line-height:180%;
}
ul {
   padding-left:15px;
   margin: 0 0 0 0;
}
.pagenav {
  text-align: center;
  font-size: 11px;
  font-weight: bold;
  border: 1px double #cccccc;
  width: auto;
  background: #ffffff;
  color: #666666;
  padding: 0px 10px;
  line-height: 2px;
  margin: 1px;


}
th.pagenav_prev,th.pagenav_next {
  text-align: center;
  font-size: 11px;
  font-weight: bold;
  border: 3px double #cccccc;
  width: auto;
  color: #666666;
  padding: 0px 10px;
  line-height: 20px;
  margin: 1px;
}
.pagenavbar {
   margin-right: 10px;
   float: right;
}
a.readon{
  text-align: center;
  font-size: 11px;
  font-weight: bold;
  border: 3px double #cccccc;
  width: auto;
  background: url(../images/button_bg.png) repeat-x;
  padding: 0px 10px;
  line-height: 20px;
  margin: 1px;
}
div.back_button{
  text-align: center;
  font-size: 11px;
  font-weight: bold;
  border: 3px double #cccccc;
  width: 110;
  background: url(../images/button_bg.png) repeat-x;
  padding: 0px 10px;
  line-height: 20px;
  margin: 1px;
}
form {
margin: 5 10 5 5!important;
margin: 0 0 0 0;
}
a.blogsection{
      background-image:url(../images/arrow.png);
      background-position:left;
      background-repeat:no-repeat;
      padding-left:10px;
}
div.blog_more{
background-color:#F7F7F7;
}
div.mosimage {
  border           : 1px solid #CCCCCC;
}
div.mosimage_caption {
  border-top: 1px solid #CCCCCC;
  background-color:#EAEAEA;
}
   a img
{
border: 0px;
}
*

Antosha

  • Захожу иногда
  • 420
  • 52 / 0
  • Плохо спорить плохо
Re: Маркеры
« Ответ #1 : 21.07.2009, 14:22:10 »
Какие маркеры? Маркеры списков? Найдите через FireBug стиль вашего списка и работайте с ним. Весь текст КСС вкуривать нет никакого желания.
<a href="http://joomlablog.ru/">JoomlaBlog</a>
*

gdX

  • Глобальный модератор
  • 995
  • 128 / 0
  • Открыт к заказам по дизайну
Re: Маркеры
« Ответ #2 : 21.07.2009, 17:54:46 »
Скорее всего где-то указано для списков list-style: none; или отступы обнулены.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не отображаются маркеры списка

Автор Concolor

Ответов: 6
Просмотров: 3560
Последний ответ 24.04.2021, 18:45:49
от Concolor
Как убрать маркеры на Joomla 2.5 и VM 2?

Автор Rok-16

Ответов: 5
Просмотров: 1433
Последний ответ 14.06.2017, 23:46:19
от Rok-16
Не могу убрать маркеры из меню

Автор marty_ny

Ответов: 2
Просмотров: 4603
Последний ответ 26.02.2012, 21:17:57
от marty_ny
исключить маркеры из суффикса модуля

Автор nicksem

Ответов: 5
Просмотров: 1978
Последний ответ 08.11.2010, 18:43:12
от Symbios