Новости Joomla

SW JProjects v.2.6.1 - компонент каталога расширений для веб-приложений

👩‍💻 SW JProjects v.2.6.1 - компонент каталога расширений для веб-приложений.

Компонент позволяет сделать свой мини-Joomla Extensions Directory - каталог расширений для CMS (не только для Joomla) или файлов. Есть возможность скачивания по лицензионным ключам создания кастомных схем данных для сервера обновлений.

v.2.6.1. Что нового?

  • Правки наследования схем серверов обновлений. Улучшена логика наследования схем серверов обновлений для проектов компонент - категория - проект.
  • Не стабильные релизы в сервере обновлений. Теперь в данные сервера обновлений попадают все версии (alpha, beta и т.д.), а не только stable.
  • Косметические изменения. В шаблоне по умолчанию сделаны замены некоторых CSS-классов, уточнено присвоение атрибутов loading=lazy и fetchpriority.
  • Рефакторинг и правки кода. Текущее обновление кодовой базы.
  • Исправление ошибок.

Больше спасибо за помощь в тестировании участникам нашего сообщества Александру Новикову (@pro_portal) и Александру Судьбинову (@alexrevo).

Событие Pizza, Bugs & Fun - 29-30 января 2026 года.

Событие Pizza, Bugs & Fun  - 29-30  января 2026 года.

Уже несколько лет в мире Joomla проводятся мероприятия "Pizza, Bugs & Fun" (#PBF), где каждый может посвятить несколько часов своего мозгового времени тому, чтобы наша любимая CMS стала ближе к идеалу.

Ссылки на видео и статьи из этого поста рассказывает об организационных вопросах, которые пригодятся для участия в PBF, а так же что и как делать.

В рамках события PBF все желающие могут собираться в общий онлайн чат, обсудить вопросы Joomla и приложить к их разрешению свою руку. Самый классный вариант, когда эта встреча происходит оффлайн: тогда организовывается пицца, напитки по вкусу и несколько часов совместного творчества.

Каждый помогает тем, что он умеет:

  • кто-то пишет недостающую документацию,
  • кто-то пишет код,
  • кто-то тестирует как исправлены ошибки или сделан новый функционал.

На сайте события есть карта, можно "захостить" свою локацию. Практически все движки в мире развиваются за счёт спонсирующих их компаний. Joomla одна из немногих, где развитие идёт только усилиями международного сообщества энтузиастов.

https://www.youtube.com/watch?v=a-FuVKXg_Uw 

На момент написания данного поста в репозитории Joomla 810 открытых Issue (как правило это баги) и 236 Pull request (PR, исправление багов и новый функционал). Все PR обязательно тестируются минимум двумя участниками сообщества, дабы в конечный код движка не проскочила ошибка.

Если каждый из участников только нашего сообщества сделает даже одно тестирование, то, боюсь, PR и Issue на всех не хватит 😀 И ничего не останется нашим коллегам из международных Joomla-чатов.

0 Пользователей и 1 Гость просматривают эту тему.
  • 14 Ответов
  • 1406 Просмотров
*

NeuroZ

  • Захожу иногда
  • 121
  • 0 / 0
  • Разработка сайтов и расширений под ключ
Смысл работы должен быть такой, как в K2 катагориях.
Есть компонент, который создает категории. В виде лежит файл манифеста отвечающий за меню views/categories/tmpl/default.xml
Код
<?xml version="1.0" encoding="utf-8"?>
<metadata>
    <layout title="COM_PHOENIX_MANUFACTURERS">
    </layout>
    <fields name="request">
        <fieldset name="request" addfieldpath="/administrator/components/com_mycomponent/models/fields">
            <field name="id"
                   type="category"
                   label="CATEGORIES"
                   description="CATEGORIES"
                   required="true"
                   edit="true"
                   clear="false"
            />
        </fieldset>
    </fields>
</metadata>

Далее по пути /administrator/components/com_mycomponent/models/fields/category.php вызывается код с запросами за категориями из бд.
И возвращается в виде селекта. С этим проблем нет.
Проблема возникает в другом:
Пункт меню не сохраняет ссылку должным образом (потому что я не знаю как это сделать). К примеру мне надо получить:
index.php?option=com_mycomponent&view=categories&id=10
а я получаю ту же ссылку, что и без выборки категории (т.е. как в ссылку пункта меню добавить этот самый id ?):
index.php?option=com_mycomponent&view=categories

p.s. также при сохранении пункта меню - не сохраняет выбранный селект (но то уже потом буду разбираться)
p.p.s. Аналогичный функционал реализован через модальное окно в компоненте контента или контактов, но там еще больше вопросов по коду возникает..
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Понятно что ничего не понятно!
По такой конструкции у меня все работает, проверьте может кодировка XML файла не в той кодировке (не utf-8)? Может где то ID не возвращает...
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Может быть, стоит назвать тип поля не "category", а по-другому? category - это как бы уже core type. И нелишне будет добавить аттрибут extension.
« Последнее редактирование: 14.01.2016, 13:55:46 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
да кстати Роберту  + за внимательность, а где в вашем поле type="category" аттрибут extension из которого будут браться категории? Без него это поле пахать вообще не должно! И естественно у вас не будет какого либо ID появляться!
*

NeuroZ

  • Захожу иногда
  • 121
  • 0 / 0
  • Разработка сайтов и расширений под ключ
Разобрался...
Дело было не в extension и не в type="category".
Код, который был в папаук fields, отвечающий за вывод кастомного селекта был скопирован с другой части сайта, где был серьезно перепилен и вырезан атрибут name. И вот из-за отсутствия name в форме - сохранение происходило некорректно. Но все равно спасибо за помощь :)
p.s. Extension, на сколько я понял, нужен для явного указания к какому компоненту должен ссылаться field из манифеста. Вот только нужен он, только в тех случаях, когда мы хотим в нашем компоненте обратиться к филду из другого компонента.
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
p.s. Extension, на сколько я понял, нужен для явного указания к какому компоненту должен ссылаться field из манифеста. Вот только нужен он, только в тех случаях, когда мы хотим в нашем компоненте обратиться к филду из другого компонента.
Вообще то если не указан extension то будет так

и предупреждение будет о том что не указан аттрибут
*

NeuroZ

  • Захожу иногда
  • 121
  • 0 / 0
  • Разработка сайтов и расширений под ключ
Вообще то если не указан extension то будет так

и предупреждение будет о том что не указан аттрибут
Ааааааа вон оно что.... спасибо!
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Разобрался...
Дело было не в extension и не в type="category".
Код, который был в папаук fields, отвечающий за вывод кастомного селекта был скопирован с другой части сайта, где был серьезно перепилен и вырезан атрибут name. И вот из-за отсутствия name в форме - сохранение происходило некорректно.
Не понял. Разве name не задается в views/categories/tmpl/default.xml?

И, будьте добры, поделитесь секретом, как вы могли этого добиться
Смысл работы должен быть такой, как в K2 катагориях.
Есть компонент, который создает категории. В виде лежит файл манифеста отвечающий за меню views/categories/tmpl/default.xml
Спойлер
[свернуть]
Далее по пути /administrator/components/com_mycomponent/models/fields/category.php вызывается код с запросами за категориями из бд.
И возвращается в виде селекта. С этим проблем нет.
? Чтобы не быть голословным, я создал 2 файла в папке com_mycomponent/models/fields: category.php и mycategory.php. Так вот, при указании типа поля = "category" опции всегда возвращаются отсюда: libraries/legacy/form/field/category.php.
« Последнее редактирование: 14.01.2016, 23:55:49 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

NeuroZ

  • Захожу иногда
  • 121
  • 0 / 0
  • Разработка сайтов и расширений под ключ
Не понял. Разве name не задается в views/categories/tmpl/default.xml?
И, будьте добры, поделитесь секретом, как вы могли этого добиться?
если Вы создаете кастомный тип поля, его поведение полностью можно переопределить в php файле, который надо добавить в папку models/fields (файл должен быть одноименным с типом поля).
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
если Вы создаете кастомный тип поля, его поведение полностью можно переопределить в php файле, который надо добавить в папку models/fields (файл должен быть одноименным с типом поля).
Не нужно меня этому учить. Меня интересует конкретно ваш случай:
-вы создали свой тип поля,
-назвали его именем существующего типа (причем core type) - category,
IMHO, система не будет обращать внимания на ваш тип, она просто берет его из своих библиотек. По крайней мере, на практике у меня вышло так, еще не было времени заглянуть в код.
Так вот, у вас этот новый, но со старым именем category, тип поля вообще существует в реальности или это просто болтовня?

Вот эта чушь от вас вселяет в меня сомнение:
p.s. Extension, на сколько я понял, нужен для явного указания к какому компоненту должен ссылаться field из манифеста. Вот только нужен он, только в тех случаях, когда мы хотим в нашем компоненте обратиться к филду из другого компонента.
« Последнее редактирование: 15.01.2016, 11:31:15 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
IMHO, система не будет обращать внимания на ваш тип, она просто берет его из своих библиотек. По крайней мере, на практике у меня вышло так, еще не было времени заглянуть в код.
и у меня тоже. видимо потому что это так и есть :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

NeuroZ

  • Захожу иногда
  • 121
  • 0 / 0
  • Разработка сайтов и расширений под ключ
Уточню, я его назвал не так. Просто изменил имя на "бла-бла". Этим "бла-бла" оказалась "category" (фактически у меня в коде другое имя). И не учел что оно зарезервировано. Я не учу, вы просто спросили "как" - я ответил. Про тип category вообще не спорю не чуть.
Просто надо было написать: ИЗВИНИТЕ, Я УМЫШЛЕНО ИЗМЕНИЛ ИМЯ ТИПА ПРИ ПОСТАНОВКЕ ЗАДАЧИ НА ФОРУМЕ, И НЕ ПОДУМАЛ, ЧТО ЭТО ЗАРЕЗЕРВИРОВАННЫЙ ТИП СИСТЕМЫ :)
Цитировать
Вот эта чушь от вас вселяет в меня сомнение
Я даже подчеркнул: на сколько я понял. Чушь - это не верное утверждение. А я не утверждаю.
*

NeuroZ

  • Захожу иногда
  • 121
  • 0 / 0
  • Разработка сайтов и расширений под ключ
Цитировать
тип поля вообще существует в реальности или это просто болтовня?
Это просто болтовня. Просто смысл изначального вопроса был в другом, и причина в другом, и я не подумал, что так вот боком выйдет мне это имя "category", которое не существует в реальности на моем сайте...
« Последнее редактирование: 15.01.2016, 12:40:50 от NeuroZ »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
ОК, все нормально. Просто ваш ответ
Разобрался...
Дело было не в extension и не в type="category".
+ ваша неточность отняли у меня некоторое время на проверку.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

NeuroZ

  • Захожу иногда
  • 121
  • 0 / 0
  • Разработка сайтов и расширений под ключ
ОК, все нормально. Просто ваш ответ+ ваша неточность отняли у меня некоторое время на проверку.
Виноват :(
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Создание компонента для табеля рабочего времени

Автор sashahz

Ответов: 7
Просмотров: 940
Последний ответ 12.04.2021, 11:12:11
от sashahz
Вызов формы компонента в pop-up, при клике по ссылке из любого места

Автор SkyAn

Ответов: 1
Просмотров: 810
Последний ответ 01.03.2021, 04:08:48
от gartes
Документация по разработки компонента для Joomla 3.x

Автор Aspik

Ответов: 9
Просмотров: 3455
Последний ответ 23.01.2021, 07:55:56
от hmr
Сборка инсталятора компонента файлами из разных папок с привлечением github

Автор borro

Ответов: 1
Просмотров: 818
Последний ответ 25.12.2020, 21:21:30
от platonische
Избранное для меню и/или категорий

Автор platonische

Ответов: 3
Просмотров: 764
Последний ответ 19.10.2020, 12:34:12
от platonische