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

Imperil

  • Захожу иногда
  • 60
  • 0 / 0
День добрый.

Посмотрел я курсы по CSS "специалиста". В нем лектор рассказывал про то, как прижать футер к низу окна браузера.
Вот код:

http://jsfiddle.net/UBwq8/1/

Все понятно, кроме одного. Зачем нужен блок #all (при том доп. блок во всех статьях на эту тему делают). Якобы основная цель у него - чтобы текст с контента не заходил на футер, ну и чтобы учитывались плавающие элементы (overflow:hidden;)

Окей. Но не проще ли сделать так? http://jsfiddle.net/cyZ7R/3/ Никакого доп. блока ненужно. Я подозреваю, что все таки второй пример или где-то неверен, в каком-то случае, или я что-то недопонимаю. Но в нем все прекрасно работает - и текст не заходит в футер, и учитываются плавающие элементы, и блока пустого нет.

Вопрос: а нафига этот блок #all?
*

Entombed

  • Захожу иногда
  • 114
  • 11 / 0
  • Ума палата ... да ключ потерял
http://www.cssstickyfooter.com/using-sticky-footer-code.html - я использую этот способ ... это оч похоже на второй ваш пример.
Опять же кому как нравится ... в первом случае all отжимает вниз на 150 а потом main это компенсирует ... получается - на + = 0. Лишние телодвижения ... второй способ более логично понятен.
Ничто не вечно под луной
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Imperil, все зависит от конкретной верстки. Если к примеру выше футера куча блоков, которые весьма динамично себя ведут - неизвестно, когда, какой именно и на какой странице отображаться будет - паддинг не подойдет. А распорка - она всегда есть, как ни крути.

Конечно, можно заключить все верхнее в еще один див-обертку и дать ему нижний паддинг, но по коду никакой разницы нет - тот же лишний div, только в другом месте.

Так что все зависит от конкретного проекта.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Есть два рациональных способа для прижатия футера:
а) футер фиксированной высоты: делаем HTML, body и первую обёртку высотой 100%, а футер отрицательным отступом подымает вверх от низа экрана + добавляем div пустой для фикса отступа;
б) футер нефиксированной высоты (куда реже бывает): юзаем display:table и производные.
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Shustry, можешь дать пример второго варианта?
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Это не первоисточник. Оригинал чёт не находится в сети. Но и так тут всё понятно.
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Немного добавлю.
очень важно понимать, что сверстать что либо с одинаковым отображением можно совершенно по разному. А различия лучше или хуже лично для меня заключаются в следующем:
1. Корректное отображение во всех современных браузерах (на сегодня уже легкая задача).
2. Минимизация кода (не надо лепить 100500 элементов там где справиться один).
3. Проверка на валидность (бывает сложно сделать из за особенностей проекта, но дико интересно довести до ума).

Если эти пункты выполнены, то лучше не задумываться над этим и идти дальше, брать новые задачи и решать их, тем самым поднимется проф. пригодность)
Я знаю только то, что ничего не знаю
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Изменение размера модального окна

Автор nesskafe

Ответов: 4
Просмотров: 2589
Последний ответ 16.06.2020, 17:43:05
от xpank
Размер всплывающего окна

Автор sokol-iz-ussr

Ответов: 1
Просмотров: 2373
Последний ответ 07.11.2016, 10:41:58
от Strikerus
При уменьшении окна браузера блоки наезжают друг на друга

Автор vaymohk

Ответов: 0
Просмотров: 1891
Последний ответ 06.08.2016, 11:39:55
от vaymohk
Как добавить колонки в футер?

Автор muria

Ответов: 2
Просмотров: 1841
Последний ответ 09.11.2015, 15:31:10
от muria
Закрепить футер шаблона yoo_gusto внизу страницы

Автор Анна_pupu

Ответов: 3
Просмотров: 1594
Последний ответ 06.10.2015, 19:06:19
от Ilhom666