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

DamianTrash

  • Захожу иногда
  • 169
  • 4 / 0
Не применяется стиль
« : 22.06.2012, 11:33:42 »
Добрый день. Joomla 2.5.5. Не могу понять почему так происходит. В пункте меню прописан класс <li class="1item-122 current active deeper parent">. Но вот проблема в том, что можно в таблице стилей создать стиль для current, active, deeper, parent, а для 1item-122 нельзя. В каких вариантах только не пробовал, а он всё равно его не видит. Может у Joomla есть какой-то секрет?
Подскажите пожалуйста кто знает, как всё таки применить таким образом стиль?
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Не применяется стиль
« Ответ #1 : 22.06.2012, 11:35:10 »
1item-122 - опечатка. Единичка лишняя
Создание сайтов, шаблонов, помощь в решении проблем.
*

DamianTrash

  • Захожу иногда
  • 169
  • 4 / 0
Re: Не применяется стиль
« Ответ #2 : 22.06.2012, 11:39:04 »
Да не, так и есть в коде.

Код
<li class="1item-122 current active deeper parent"><a href="/profile">Мой кабинет</a></li>
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Не применяется стиль
« Ответ #3 : 22.06.2012, 11:49:26 »
ссылку
Создание сайтов, шаблонов, помощь в решении проблем.
*

DamianTrash

  • Захожу иногда
  • 169
  • 4 / 0
Re: Не применяется стиль
« Ответ #4 : 22.06.2012, 11:56:28 »
http://dobrenkiy.ru/ Если зарегистрироваться, то сверху появляется меню.
Верхнее меню и правое одинаковое, выведено с помощью модуля "Альтернативный модуль меню", поэтому часть пунктов скрыта. Но при переходе на страницу профиля http://dobrenkiy.ru/profile в правом меню появляется скрытый пункт "Мой кабинет", которого вообще там нет. Вот я и хочу применить ему стиль
Код
#right ul.menu li.1item-122 {
display:none;}
, но не могу((((
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Не применяется стиль
« Ответ #5 : 22.06.2012, 11:58:06 »
Цитировать
Если зарегистрироваться, то сверху появляется меню.
Я не буду регистрироваться. Давайте тестовый логин.
Создание сайтов, шаблонов, помощь в решении проблем.
*

DamianTrash

  • Захожу иногда
  • 169
  • 4 / 0
Re: Не применяется стиль
« Ответ #6 : 22.06.2012, 12:00:31 »
Логин test
Пароль test
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Не применяется стиль
« Ответ #7 : 22.06.2012, 12:17:14 »
Проблема скорее всего в этой единичке. Откуда она берётся?
Плагин русская типографика не стоит?
Посмотрите в шаблоне меню. В шаблоне html/mod_menu/default.php строчку
$class = ' class="'.$class.'item'.$item->id.'"';
Может также вы в настройках пункта меню эту единичку указали.
Создание сайтов, шаблонов, помощь в решении проблем.
*

DamianTrash

  • Захожу иногда
  • 169
  • 4 / 0
Re: Не применяется стиль
« Ответ #8 : 22.06.2012, 12:31:56 »
Русская типографика не стоит. В настройках тоже ничего нет. Не пойму даже откуда она может браться. Вот код файла. Посмотрите пожалуйста, может вы что-то поймёте

Код
<?php
/**
 * @package Joomla.Site
 * @subpackage mod_menu
 * @copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved.
 * @license GNU General Public License version 2 or later; see LICENSE.txt
 */

// No direct access.
defined('_JEXEC') or die;

// Note. It is important to remove spaces between elements.
?>

<ul class="menu<?php echo $class_sfx;?>"<?php
$tag = '';
if ($params->get('tag_id')!=NULL) {
$tag = $params->get('tag_id').'';
echo ' id="'.$tag.'"';
}
?>>

<?php
foreach ($list as $i => &$item) :
$s = array_search($item->id, $arid);
If ($item->deeper) {
$s = false;
}
if ($s === false) {
$class = 'item-'.$item->id;
if ($item->id == $active_id) {
$class .= ' current';
}

if (in_array($item->id, $path)) {
$class .= ' active';
}
elseif ($item->type == 'alias') {
$aliasToId = $item->params->get('aliasoptions');
if (count($path) > 0 && $aliasToId == $path[count($path)-1]) {
$class .= ' active';
}
elseif (in_array($aliasToId, $path)) {
$class .= ' active';

}
}

if ($item->deeper) {
$class .= ' deeper';
}

if ($item->parent) {
$class .= ' parent';
}

if (!empty($class)) {
$class = ' class="1'.trim($class).'"';
}

echo '<li'.$class.'>';

// Render the menu item.
switch ($item->type) :
case 'separator':
case 'url':
case 'component':
require JModuleHelper::getLayoutPath('mod_menu_s', 'default_'.$item->type);
break;

default:
require JModuleHelper::getLayoutPath('mod_menu_s', 'default_url');
break;
endswitch;

// The next item is deeper.
if ($item->deeper) {
echo '<ul>';
}
// The next item is shallower.
elseif ($item->shallower) {
echo '</li>';
echo str_repeat('</ul></li>', $item->level_diff);
}
// The next item is on the same level.
else {
echo '</li>';
}
}
endforeach;
?></ul>
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Не применяется стиль
« Ответ #9 : 22.06.2012, 12:34:09 »
попробуйте удалить единичку
if (!empty($class)) {
         $class = ' class="1'.trim($class).'"';
      }
Создание сайтов, шаблонов, помощь в решении проблем.
*

DamianTrash

  • Захожу иногда
  • 169
  • 4 / 0
Re: Не применяется стиль
« Ответ #10 : 22.06.2012, 12:36:59 »
ДААААА!
Проблема оказалась действительно в ней  :D :D :D!
Спасибо огромное за помощь))))
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Не применяется стиль
« Ответ #11 : 22.06.2012, 12:48:51 »
Отпишитесь в теме модуля, чтоб исправили.
Создание сайтов, шаблонов, помощь в решении проблем.
*

netmind

  • Осваиваюсь на форуме
  • 33
  • 0 / 0
Re: Не применяется стиль
« Ответ #12 : 04.07.2012, 16:58:43 »
Насколько я помню, по спецификации CSS классы не должны начинаться с цифр. Видимо косяк самого модуля
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Нужен пример как присвоить свой стиль одному модулю

Автор nick71

Ответов: 21
Просмотров: 5792
Последний ответ 17.02.2018, 14:44:40
от cirip
Перенести стиль компонента в шаблон

Автор stparts

Ответов: 5
Просмотров: 1594
Последний ответ 07.02.2018, 14:01:10
от stparts
Стиль для вышестоящего блока - HTML, CSS

Автор lalalag

Ответов: 6
Просмотров: 2774
Последний ответ 26.06.2017, 15:07:35
от Shustry
Свой стиль для placeholder

Автор kik84

Ответов: 2
Просмотров: 1341
Последний ответ 22.11.2016, 16:04:10
от kik84
Стиль для всплывающего названия картинки- как?

Автор epson950

Ответов: 3
Просмотров: 1542
Последний ответ 03.11.2016, 01:04:05
от AlekVolsk