Новости Joomla

👩‍💻 Joomla включена в программу Google Summer of Code 2026.

👩‍💻 Joomla включена в программу Google Summer of Code 2026.

Google Summer of Code (GSoC) - программа компании Google, которая позволяет участникам программы под руководством опытных наставников писать код для организаций, занимающейся открытым исходным кодом. Joomla принимает участие в этой программе не в первый раз и в 2026 году снова включена в список GSoC. Для программы утверждается список "идей", воплотить которые должны участники под руководством наставников.

Проекты Joomla в рамках программы GSoC 2026.

Проект I: Ajax-бэкенд.
- Действия в административной панели без необходимости обновлять страницу.
- Автоматическое сохранение содержимого во время редактирования.
- Расширенный фильтр - поиск и фильтрация по пользовательским полям.

Проект II: Автоматизация рабочих процессов (workflow + task scheduler).
Joomla имеет функцию процессов и планировщика задач. Теперь эти две функции следует объединить, чтобы пользователь мог настраивать назначенные рабочие процессы таким образом, чтобы переходы выполнялись автоматически, с возможностью точного определения времени. Должна быть возможность создавать циклы или прямые запланированные рабочие процессы. Предполагается, что интерфейс должен учитывать хороший пользовательский опыт, удобство использования и современные стандарты доступности. Ожидается, что будет добавлен интерфейс для управления процессами и их расписанием на страницах категорий и материалов. Так же ожидается, что сторонние компоненты также смогут воспользоваться этим функционалом.

Проект III: Мультикатегории.
В настоящее время Joomla! не позволяет назначать один элемент нескольким категориям. Хотя система тегов часто используется в качестве замены, существует острая потребность в нативной поддержке нескольких категорий, чтобы привести Joomla! в соответствие с другими современными системами управления контентом.

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

Принять участие GSoC 2026
Подробнее о проектах Joomla GSoC 2026
Чат GSoC в Mattermost (международное сообщество Joomla)

Вышли релизы Joomla 6.0.3 и Joomla 5.4.3

Релиз Joomla 6.0.3 и Joomla 5.4.3

Проект Joomla рад сообщить о выпуске Joomla 6.0.3 и Joomla 5.4.3. Это релиз исправлений ошибок и улучшений для серии Joomla 6.0 и Joomla 5.4.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

В процессе работы с Joomla бывает необходимо работать с пользовательским интерфейсом более тонко, чем обычно. Все формы Joomla состоят из стандартных полей, содержанием, стилем отображения, состоянием (включено/выключено, доступно для редактирования или нет и т.д.) можно управлять с помощью плагинов. Да и для нестандартных проектов хорошей практикой является создание одного системного или нескольких плагинов групп "под проект", в которых храниться весь "нестандарт".

В этой статье описаны все триггеры, которые вызываются через Event Dispatcher из administrator/components/com_fields/src/Helper/FieldsHelper.php, с привязкой к жизненному циклу (порядку этапов работы запроса), аргументам, изменяемым данным и дальнейшему распространению по Joomla. Это поможет вам работать с Joomla свободнее и не опасаясь при этом потерять изменения при очередном обновлении движка.

Подходы, описанные в статье, полезны в тех случаях, когда вы работаете с данными в com_fields - механизме создания и редактирования пользовательских полей ядра Joomla и при использовании FieldsHelper. Многие сторонние компоненты не используют эту возможность, поэтому данная статья будет полезна лишь частично.

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

archi_tec

  • Захожу иногда
  • 63
  • 0 / 0
У меня главное меню представляется в виде:


<ul class="menu">

<li id="current" class="active item1"> <a href="#"> <span>Раздел1</span> </a> </li>

<li class="item2"> <a href="#"> <span>Раздел 2</span> </a> </li>

</ul>


А мне нужно, чтобы было так:

<ul class="menu">

<li id="current" class="active item1"> <a href="#" onMouseOver="........."> <span>Раздел1</span> </a> </li>

<li class="item2"> <a href="#" onMouseOver="........."> <span>Раздел 2</span> </a> </li>

</ul>

Подскажите, это можно как-то реализовать?
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
можно.
\modules\mod_mainmenu\helper.php
в районе 360 строки

условия-это перебор видов ссыолок (типа "в новом окне без навигации" и тд)
лучше вместо одного из них свой код вписать и с настроках пункта нужный тип проставить ему
*

archi_tec

  • Захожу иногда
  • 63
  • 0 / 0
можно.
\modules\mod_mainmenu\helper.php
в районе 360 строки


Если честно, я в том, что там написано ничего не понимаю:

switch ($tmp->browserNav)
         {
            default:
            case 0:
               // _top
               $data = '<a href="'.$tmp->url.'">'.$image.$tmp->name.'</a>';
               break;
            case 1:
               // _blank
               $data = '<a href="'.$tmp->url.'" target="_blank">'.$image.$tmp->name.'</a>';
               break;
            case 2:
               // window.open
               $attribs = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,'.$this->_params->get('window_open');

               // hrm...this is a bit dickey
               $link = str_replace('index.php', 'index2.php', $tmp->url);
               $data = '<a href="'.$link.'" onclick="window.open(this.href,\'targetWindow\',\''.$attribs.'\');return false;">'.$image.$tmp->name.'</a>';
               break;
         }

и как тут рабораться..


*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
ну смысл в переписывании одного из условий в нужный тебе вид.   

 case 2:
               $data =  '<a href="#" onMouseOver="....блаблабла';
               
               break;
*

archi_tec

  • Захожу иногда
  • 63
  • 0 / 0
ну смысл в переписывании одного из условий в нужный тебе вид.  

 case 2:
               $data =  '<a href="#" onMouseOver="....блаблабла';
              
               break;

ну я вставил то, что мне нужно:

$data = '<a href="'.$link.'" onMouseOver="....блаблабла onclick="window.open(this.href,\'targetWindow\',\''.$attribs.'\');return false;">'.$image.$tmp->name.'</a>';
               break;

но в исходном коде никаких изменений
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
вот теперь зайди в меню и поменяй своему пункту модель вывода, чтобы его обрабатывало по второму условию
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

убрать из меню заголовки h3

Автор nexter

Ответов: 19
Просмотров: 9263
Последний ответ 03.02.2020, 18:49:47
от durte
При добавлении нового пункта меню не отображается содержимое

Автор Denko

Ответов: 2
Просмотров: 4240
Последний ответ 16.01.2020, 18:40:55
от Denko
Не нажимается пункт меню на мобильной версии

Автор Sensession

Ответов: 7
Просмотров: 5906
Последний ответ 04.01.2020, 16:45:27
от xpank
Не отображаются пункты в меню

Автор physic

Ответов: 20
Просмотров: 24582
Последний ответ 20.09.2019, 16:54:01
от beliyadm
Как в ARI Ext Menu добиться работы параметра "Показать в меню"?

Автор vasmed

Ответов: 1
Просмотров: 4629
Последний ответ 01.03.2019, 11:12:18
от vasmed