Новости Joomla

SW JProjects v.2.5.0 - компонент каталога цифровых проектов на Joomla

SW JProjects v.2.5.0 - компонент каталога цифровых проектов на Joomla

👩‍💻 SW JProjects v.2.5.0 - компонент каталога цифровых проектов на Joomla.Компонент - менеджер цифровых проектов для Joomla! CMS. Компонент обеспечивает создание каталога цифровых проектов и предоставляет возможность скачивания, в том числе с использованием лицензионных ключей.👩‍💻 v.2.5.0. Что нового?Схемы структур данных для серверов обновлений. Теперь с SW JProjects вы может создавать сервер обновлений не только для расширений Joomla, но и свои собственные. Например, вам нужно, чтобы структура данных сервера обновлений была другая и формат должен быть, например, не XML, а JSON. Формирование структуры данных для сервера обновлений расширений Joomla вынесено в отдельный плагин. Вы можете создать свой собственный плагин и реализовать в нём нужную вам структуру данных, добавив или наоборот исключив отображаемые данные. Сервер обновлений в компоненте по-прежнему отображает информацию о списке проектов и их версиях, о конкретном проекте и его changelog.Можно выбрать схему данных сервера обновлений глобально для всего компонента, выбрать другую схему данных для категории проектов, а так же выбрать схему в каждом проекте.

Разработчикам в качестве образца можно посмотреть плагин схемы данных для Joomla в составе компонента или же плагин-образец JSON-схемы на GitHub.
Группа плагинов swjprojects. Для нужд компонента создана группа плагинов swjprojects. В частности, в этой группе находится плагин структуры данных Joomla расширений для сервера обновлений.Изменение языковых констант. Изменены некоторые языковые константы в панели администратора. Если вы делали переопределение констант - переопределите их снова.👩‍💻 Joomla 6. Внесены изменения для корректной установки и работы компонента на Joomla 6. Компонент успешно протестирован на Joomla 6-beta2.Минимальная версия Joomla - 5. Подняты минимальные системные требования: Joomla 5.0.0 и PHP 8.1.
- Страница расширения👉 Плагин-образец кастомной JSON-схемы данных для сервера обновлений на GitHub.- GitHub расширения- Документация на GitHub- Joomla Extensions Directory#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 Гость просматривают эту тему.
  • 25 Ответов
  • 8071 Просмотров
*

robotwerder

  • Захожу иногда
  • 248
  • 6 / 1
как сверстать такие картинки между пунктами.
вообщем при помощи padding И  смещения картинки я сверстал это меню картинка один. только есть один момент который неустраивает.
картинка разделитель, это видно на второй картинке появляется по краям . а это не красиво.
как сверстать так чтобы небыло картинки разделителя справа?!
чувствую что решение несложное, посоветуйте пожалуйста !


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

gdX

  • Глобальный модератор
  • 995
  • 128 / 0
  • Открыт к заказам по дизайну
Задать картинки всем пунктам меню, а у первого или у последнего, в зависимости от техники, убрать.
У них же ставятся уникальные классы itemN, где N  — это Itemid пункта в админ. части данного меню.
*

robotwerder

  • Захожу иногда
  • 248
  • 6 / 1
<table width="100%" border="0" cellpadding="0" cellspacing="1"><tr><td nowrap="nowrap"><a href="/index.php?option=com_content&amp;view=frontpage&amp;Itemid=1" class="mainlevel-nav" id="active_menu-nav">Главная</a>
пардон, я что та недогнал .. речь идет о topmenu . непонял как поставить уникальный класс каждому пункту меню, или как его получить?!
в админке модуля топ-меню в доп параметрах тока
ID тега меню    
Суффикс CSS-класса меню    
Суффикс класса модуля  ,
есть еще изображения отступа, но они не появляются какие не выбирай..
поясните подробнее пожалуйста.
*

Аня

  • Давно я тут
  • 745
  • 33 / 0
  • Копатыч нестабилен!
Пишите уникальные характеристики для отдельных пунктов в CSS, например:

Код
ul.mainlevel-nav ul li.item65 a:link, ul.menu-fabout ul li.item65 a:visited{
background-image: none;
color: #fff;
text-decoration: none;
padding: 0 0 0 15px;
}

Ну, и так далее в этом роде, вам надо два крайних айтема описать, это немного.
Fatal error - это не фатально!!! Я проверила.
*

robotwerder

  • Захожу иногда
  • 248
  • 6 / 1
собственно .. с CSS у меня всплыла проблема .. понять то что вы предложили понял а реализовать у сожалению не могу..
вот мой конкретный случай..
<table cellpadding="0" cellspacing="0" class="moduletable">
         <tr>
         <td>

            <table width="100%" border="0" cellpadding="0" cellspacing="1"><tr><td nowrap="nowrap"><a href="/index.php?option=com_content&amp;view=frontpage&amp;Itemid=1" class="mainlevel-nav" id="active_menu-nav">Главная</a>

неполучается правильно организовать код стиля ..
по всякому пробовал, но видимо что та не так..
table.moduletable table td a item1
{
background-image:url(../images/dev.jpg);
   color: #fff;
   text-decoration: none;
   padding: 0 0 0 15px;
   background-repeat: no-repeat;
   background-position: center;
} для первого пунтка меню..
подскажите где ошибка?
*

gdX

  • Глобальный модератор
  • 995
  • 128 / 0
  • Открыт к заказам по дизайну
*

robotwerder

  • Захожу иногда
  • 248
  • 6 / 1
*

sbakur

  • Захожу иногда
  • 169
  • 12 / 0
Заходим в менеджер модулей -> модуль меню -> другие параметры -> и в самом низу есть поле "разделитель" и вписываем   |    Вроде должно получиться так ТЕСТ | ТЕСТ | ТЕСТ | ТЕСТ | ТЕСТ | ТЕСТ | ТЕСТ  
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
В настройках модуля меню выставьте плоский список отображения, а не устаревший горизонтальный, тогда у вас будет все в UL LI и с ними работать гораздо удобней
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

gdX

  • Глобальный модератор
  • 995
  • 128 / 0
  • Открыт к заказам по дизайну
В настройках модуля меню выставьте плоский список отображения, а не устаревший горизонтальный, тогда у вас будет все в UL LI и с ними работать гораздо удобней
Да, если работаете на ветке 1.5.х, то лучше тогда строить меню на списке.
При этом Вы получите уникальность каждого пункта меню по классу.
*

robotwerder

  • Захожу иногда
  • 248
  • 6 / 1
<ul id="mainlevel-nav"><li><a href="/index.php?option=com_content&amp;view=frontpage&amp;Itemid=1" class="mainlevel-nav" id="active_menu-nav">Главная</a></li><li><a href="/index.php?option=com_content&amp;view=article&amp;id=1&amp;Itemid=28" class="mainlevel-nav" >Услуги</a>

вот теперь у меня список и опять с CSS ничего не выходит .. пробовал с кодом совершенно различные комбинации

index.php?option=com_content&amp;view=frontpage&amp;Itemid=1

то есть эта часть должна выделится в отдельный класс для каждого пункта отдельный естессно, а не быть в составе ссылки как у меня в данном примере?!

чесное слово не ожидал подобных препятствий с менюшкой ..
жду предложений.. что не так делаю господа?
*

Аня

  • Давно я тут
  • 745
  • 33 / 0
  • Копатыч нестабилен!
Код
ul.mainlevel-nav li.item1 a:link
- возможно, нужно вот такое правило для характеристики первого пункта - в этих css-правилах важна последовательность букв (и слогов :))- ее лучше отслеживать файербугом, как он пишет, так и писать в css.
Fatal error - это не фатально!!! Я проверила.
*

robotwerder

  • Захожу иногда
  • 248
  • 6 / 1
спасибо девушка Аня, но увы, ваша последовательность так же бессильна как и мои .. тож использую firebug
« Последнее редактирование: 26.09.2009, 23:45:58 от robotwerder »
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
К примеру смотри сайт
Левое меню имеет вывод
Код: html4strict
<ul class="menu">
<li class="parent item1">
<a href="/infrastructure.html">
<img align="left" alt="infrastructure" src="/images/stories/podrazdel_item.gif"/>
<span>Инфраструктурные решения</span>
</a>
</li>
</ul>
Вот вам и уникальный класс для пункта меню item1
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

robotwerder

  • Захожу иногда
  • 248
  • 6 / 1
тьфу блин .. сам недоработал.. простите за отнятое время !! выбрал просто "список" и сразу же получил нужную конструкцию . ща буду верстать.
. перебрал все пункты в админке а "список " пропустил ..
всем спасибищще за отклик!
*

robotwerder

  • Захожу иногда
  • 248
  • 6 / 1
возвращаюсь к теме верхнего меню чтобы узнать у вас, можно ли теперь зафиксировать его по ширине?!, чтобы при уменьшении окна браузера пункты списка не проваливались на след строку :(

непродумал этот важный момент, а теперь заказщик попросил доп пункты..
сейчас оно выглядит так
Код
<!-- MENU -->
<table class="menubg" width="100%" height="33px" align="center" border="0" cellpadding="0" cellspacing="0" background"menu_bg_.jpg">
   <td> <div id="top" align="center"> <table cellpadding="0" cellspacing="0" class="moduletable">
<tr>
<td>


<ul class="menu-nav" id="top">
<li id="current" class="active item1">
<a href="http://beta.openvpn.ru/">
<span>Главная</span>
</a>
</li>
<li class="item59">
<a href="/index.php?option=com_content&amp;view=article&amp;id=69&amp;Itemid=59&amp;lang=ru">
<span>Технологии</span>

</a>
</li>
<li class="item18">
<a href="/index.php?option=com_content&amp;view=category&amp;id=39&amp;Itemid=18&amp;lang=ru">
<span>Настройка и помощь</span>
</a>
</li>
<li class="item29">

<a href="/index.php?option=com_content&amp;view=article&amp;id=67&amp;Itemid=29&amp;lang=ru">
<span>Цены</span>
</a>
</li>
<li class="item30">
<a href="/index.php?option=com_contact&amp;view=contact&amp;id=1&amp;Itemid=30&amp;lang=ru">
<span>Контакты</span>
</a>

</li>
</ul> </td>
</tr>
</table>
</div></td>

</table>

<!-- /MENU -->



и CSS
Код
ul.menu-nav 
{
list-style-type: none;

}
ul.menu-nav li
{
display: inline;
padding-left: 112px;
margin: 0px;
}
ul.menu-nav li a
{
color: #FFFFFF;
font-size: 14px;
text-decoration: none;
}
ul.menu-nav li a:hover
{
color: #FFFFFF;
font-size: 14px;
text-decoration: underline;
}
ul.menu-nav li a:visited
{
color: #FFFFFF;
font-size: 14px;
    text-decoration: none;
}
ul.menu-nav li.item28
{
background-image: url(../images/dev.jpg);
background-repeat: no-repeat;
color:#FFFFFF;
background-position: 50px center;
display: inline;
}
весь код не стал приводить .. проблема на сайте http://beta.openvpn.ru/
 в идеале хорошо бы пункты динамически сжимались,но думаю это импоссибл поскольку эт не таблицы .. др модуль нехочется исп-ть, чую что решение существует, эт наверняка типичная проблемка.
посоветуйте пожалуйста решения уважаемые профи, участники и гости форума
*

Аня

  • Давно я тут
  • 745
  • 33 / 0
  • Копатыч нестабилен!
Код
ul.menu-nav li
{
display: inline;
padding-left: 112px;
margin: 0px;
}
Вот где первое зло - паддинг не дает меню сжиматься! А потом еще сам имидж images/dev.jpg - может, он длинный и занимает много места?
Fatal error - это не фатально!!! Я проверила.
*

robotwerder

  • Захожу иногда
  • 248
  • 6 / 1
мм.. недостаток опыта в верстке не позволяет мне верить что такое меню может сжиматься по ширине как таблички, ровно как и неверить вам у меня оснований нет уважаемая Анна. Буду проверять.
дело в том что при помощи паддинга я привычно выстраиваю расстояние меж пунктами меню а картинки слишком узкие хотя на всяк случай определю их ширину в правилах css.
видимо у меня 2 варианта. 1) сделать так чтобы пунткты сжимались по ширине
                                      2)  либо зафиксировать его ширину и оцентрировать

и при первом и втором варианте пункты не должны падать вниз. о результатах доложусь. хотя перегуглил уже порядком сайтов :(
*

Аня

  • Давно я тут
  • 745
  • 33 / 0
  • Копатыч нестабилен!
Текст отцентруйте и паддинг не нужен будет, я так думаю. А ширина всего меню, то есть всего ul  пусть будет 100 процентов. Ну, или 80, сколько там нужно...
Fatal error - это не фатально!!! Я проверила.
*

robotwerder

  • Захожу иногда
  • 248
  • 6 / 1
               |----1й пункт----| ----2й пункт----|                      

вот для чего я испльзую паддинг, вот по такому принципу как на моей схемке пунктиром
а какой текст центрировать и зачем я простите не понял. замысла тож не просёк :(
*

Аня

  • Давно я тут
  • 745
  • 33 / 0
  • Копатыч нестабилен!
Код
ul.menu-nav li.item28
{
background-image: url(../images/dev.jpg);
background-repeat: no-repeat;
color:#FFFFFF;
background-position: 50px center;
display: inline;
}
Вот смотрите, сколько тут еще места - целых 50 пикселей! Этот тоже расстояние фиксированное, как и паддинг 112, которое не дает меню сжиматься! Ставите ваш имидж в позицию
Код
background-position: right; background-repeat: no-repeat;
А текст в контейнере li ставите по центру
Код
ul.menu-nav li
{
display: inline;
text-align: center;
        margin: 0;
}
Мне кажется, так и текст будет на месте, и разделитель справа, и никаких препон для того, чтобы пункты расширялись, если есть место, и сужались, если места не хватает. В CSS важна человеческая логика и великий сайт htmlbook.ru
Fatal error - это не фатально!!! Я проверила.
*

robotwerder

  • Захожу иногда
  • 248
  • 6 / 1
я что та недогнал всё равно .. если убрать паддинг между пунктами меню не будет пространства ипункты будут слипабтся по ширине. меня как раз интересуют интервалы между меню. Мне нужно чтобы пропуски были и я решил выставить либо паддинги либо ширину. но опять и в том и другом случае при превышении определенной ширины  либо паддингов крайний правый пункт сваливатеся вниз :(

Код
	ul.menu-nav 
{
list-style-type: none;
margin:0px;
padding:0px;
float:left;
display:block;
POSITION: absolute;
}
ul.menu-nav li
{
display: inline;
text-align: center;
    margin: 0;
/*padding-left:40px;
padding-right:40px;*/
FLOAT: left;
POSITION: relative;
width:160px;
}

*

Аня

  • Давно я тут
  • 745
  • 33 / 0
  • Копатыч нестабилен!
Так вы задайте всему ul ширину 100%, и все пункты распространятся на эти 100%!
Fatal error - это не фатально!!! Я проверила.
*

robotwerder

  • Захожу иногда
  • 248
  • 6 / 1
к сожалению всё не так радужно как кажется на словах..
при width 100% ul пункты никак не разъезжаются на всю ширину а остаются впритык друг другу посередине..
видимо необходимо другое решение, другой подход.
*

Аня

  • Давно я тут
  • 745
  • 33 / 0
  • Копатыч нестабилен!
Да, правда ваша, для списка только паддинги задают отбой... Остается либо все переписывать напрочь,  либо подобрать паддинги не слишком большие и добавить white-space: nowrap; тогда ничего никуда съезжать не будет, а будет возникать полоса прокрутки при узком экране... Хотелось бы, конечно, иметь стандартный тип меню в ячейках таблицах - но нет в мире совершенства...
Fatal error - это не фатально!!! Я проверила.
*

robotwerder

  • Захожу иногда
  • 248
  • 6 / 1
а вот с white-space: nowrap; попробую.
видимо попробую для каждого пункта выставить такие отступы. Спасибо :)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как уменьшить отступ между Title и Components в шаблоне Helix3

Автор artem_wrong

Ответов: 21
Просмотров: 5907
Последний ответ 17.06.2022, 22:42:47
от Scaltro
Кликабельность псевдоэлемента в пункте меню

Автор vasilii.pupkov

Ответов: 4
Просмотров: 3233
Последний ответ 29.12.2021, 23:15:38
от v42bis
Выпадающее меню

Автор DrShepard

Ответов: 10
Просмотров: 2901
Последний ответ 20.10.2021, 12:36:16
от DrShepard
Как закруглить края выпадающего меню?

Автор coliandra

Ответов: 1
Просмотров: 1401
Последний ответ 11.12.2020, 21:15:57
от effrit
При прокрутке страницы виджет залезает на меню

Автор coliandra

Ответов: 2
Просмотров: 1300
Последний ответ 27.11.2020, 11:33:58
от coliandra