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

elosteris

  • Новичок
  • 4
  • 0 / 0
Здравствуйте. При обновлении PHP 7.0 на 7.3 появляется ошибка
Спойлер
[свернуть]

Погуглив, наткнулся на этот форум, где разбирается похожая проблема
Спойлер
[свернуть]

Попытавшись разобраться (а знания у меня околонулевые), понял, что у меня ситуация немного отличается. Включив режим отладки, обнаружил следующее
Код
Using $this when not in object context

Call stack
# Function Location
1 () JROOT/libraries/src/Application/CMSApplication.php:370
2 Joomla\CMS\Application\CMSApplication::getMenu() JROOT/libraries/src/Application/SiteApplication.php:275
3 Joomla\CMS\Application\SiteApplication::getMenu() JROOT/components/com_xmap/router.php:96
4 XmapBuildRoute() JROOT/libraries/src/Component/Router/RouterLegacy.php:69
5 Joomla\CMS\Component\Router\RouterLegacy->build() JROOT/libraries/src/Router/SiteRouter.php:528
6 Joomla\CMS\Router\SiteRouter->buildSefRoute() JROOT/libraries/src/Router/SiteRouter.php:498
7 Joomla\CMS\Router\SiteRouter->_buildSefRoute() JROOT/libraries/src/Router/Router.php:281
8 Joomla\CMS\Router\Router->build() JROOT/libraries/src/Router/SiteRouter.php:154
9 Joomla\CMS\Router\SiteRouter->build() JROOT/libraries/src/Router/Route.php:144
10 Joomla\CMS\Router\Route::link() JROOT/libraries/src/Router/Route.php:93
11 Joomla\CMS\Router\Route::_() JROOT/modules/mod_menu/helper.php:139
12 ModMenuHelper::getList() JROOT/modules/mod_menu/mod_menu.php:15
13 include() JROOT/plugins/system/t3/includes/joomla4/ModuleHelper.php:201
14 Joomla\CMS\Helper\ModuleHelper::renderModule() JROOT/libraries/src/Document/Renderer/Html/ModuleRenderer.php:98
15 Joomla\CMS\Document\Renderer\Html\ModuleRenderer->render() JROOT/libraries/src/Document/Renderer/Html/ModulesRenderer.php:47
16 Joomla\CMS\Document\Renderer\Html\ModulesRenderer->render() JROOT/libraries/src/Document/HtmlDocument.php:491
17 Joomla\CMS\Document\HtmlDocument->getBuffer() JROOT/libraries/src/Document/HtmlDocument.php:783
18 Joomla\CMS\Document\HtmlDocument->_renderTemplate() JROOT/libraries/src/Document/HtmlDocument.php:557
19 Joomla\CMS\Document\HtmlDocument->render() JROOT/libraries/src/Application/CMSApplication.php:1044
20 Joomla\CMS\Application\CMSApplication->render() JROOT/libraries/src/Application/SiteApplication.php:778
21 Joomla\CMS\Application\SiteApplication->render() JROOT/libraries/src/Application/CMSApplication.php:202
22 Joomla\CMS\Application\CMSApplication->execute() JROOT/index.php:49
Насколько я смог понять, проблема в плагине T3, но поковырявшись в ModuleHelper.php я не обнаружил типичной ошибки &JSite::getMenu();
Если я правильно понимаю, ошибка содержится конкретно тут:
Код
// no direct access
defined('_JEXEC') or die;

//check if t3 plugin is existed
if (!defined('T3')) {
    if (JError::$legacy) {
        JError::setErrorHandling(E_ERROR, 'die');
        JError::raiseError(500, JText::_('T3_MISSING_T3_PLUGIN'));
        exit;
    } else {
        throw new Exception(JText::_('T3_MISSING_T3_PLUGIN'), 500);
    }
}

[b]$t3app = T3::getApp($this);[/b]

// get configured layout
$layout = $t3app->getLayout();


$t3app->loadLayout($layout);
(файл index.php в шаблоне)

Но не могу понять каким образом это можно исправить. Кто-нибудь может подсказать в чем причина и как это исправить?
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Нет, смотрите что тут
ModMenuHelper::getList() JROOT/modules/mod_menu/mod_menu.php:15
*

ProtectYourSite

  • Живу я здесь
  • 2368
  • 139 / 4
  • Безопасность вебсайтов
Код
Joomla\CMS\Application\CMSApplication::getMenu() JROOT/libraries/src/Application/SiteApplication.php:275
Joomla\CMS\Application\SiteApplication::getMenu() JROOT/components/com_xmap/router.php:96
Я бы там присмотрелся, можно вообще Xmap отключить и заменить поддерживаемым компонентом карты сайта
*

elosteris

  • Новичок
  • 4
  • 0 / 0
Нет, смотрите что тут
ModMenuHelper::getList() JROOT/modules/mod_menu/mod_menu.php:15
Спасибо за ответ.
Код
<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_menu
 *
 * [member=126442]copyright[/member]   Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;

// Include the menu functions only once
JLoader::register('ModMenuHelper', __DIR__ . '/helper.php');

$list       = ModMenuHelper::getList($params);
$base       = ModMenuHelper::getBase($params);
$active     = ModMenuHelper::getActive($params);
$default    = ModMenuHelper::getDefault();
$active_id  = $active->id;
$default_id = $default->id;
$path       = $base->tree;
$showAll    = $params->get('showAllChildren', 1);
$class_sfx  = htmlspecialchars($params->get('class_sfx'), ENT_COMPAT, 'UTF-8');

if (count($list))
{
require JModuleHelper::getLayoutPath('mod_menu', $params->get('layout', 'default'));
}
В коде ничего подозрительного не увидел, но он ссылается на helper.php, в нём же есть такая строчка
Код
	public static function getList(&$params)
{
$app = JFactory::getApplication();
$menu = $app->getMenu();
Насколько я понимаю, ошибки тут нет. По необходимости могу всё тело файла приложить
*

elosteris

  • Новичок
  • 4
  • 0 / 0
Код
Joomla\CMS\Application\CMSApplication::getMenu() JROOT/libraries/src/Application/SiteApplication.php:275
Joomla\CMS\Application\SiteApplication::getMenu() JROOT/components/com_xmap/router.php:96
Я бы там присмотрелся, можно вообще Xmap отключить и заменить поддерживаемым компонентом карты сайта
Xmap и все плагины с ним связанные отключил в первую очередь, но ошибка почему-то осталась
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
А в этой строке /components/com_xmap/router.php:96 , так же получается $menu  как в модуле ?
*

elosteris

  • Новичок
  • 4
  • 0 / 0
А в этой строке /components/com_xmap/router.php:96 , так же получается $menu  как в модуле ?
Благодарю! Ошибка оказалась именно тут, как ни странно, хоть я и отключил Xmap в плагинах, но видимо этого было не достаточно, необходимо было поправить строку 96, там было &JSite::getMenu(); , поставить надо JFactory::getApplication()->getMenu(); .
Я бы не додумался, что отключенный плагин может помешать как-то. Большое спасибо, тему можно закрывать)
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Ошибка оказалась именно тут, как ни странно, хоть я и отключил Xmap в плагинах, но видимо этого было не достаточно, необходимо было поправить строку 96, там было &JSite::getMenu(); , поставить надо JFactory::getApplication()->getMenu(); .
Это в коде компонента, а не плагина .
« Последнее редактирование: 22.10.2019, 12:37:31 от draff »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Нужна проф помощь в обновлении Joomla на лок.сервере osp. Можно платно

Автор Fati

Ответов: 0
Просмотров: 5705
Последний ответ 16.06.2025, 16:40:04
от Fati
Прошу помощи. Ошибка при обновлении на Joomla 4

Автор wmsonic

Ответов: 1
Просмотров: 2602
Последний ответ 29.10.2023, 22:07:23
от Kukush
Выходит ошибка в админской панели

Автор daymarus

Ответов: 0
Просмотров: 2252
Последний ответ 10.08.2023, 12:43:43
от daymarus
При обновлении ошибка 403 Forbidden Request forbidden by administrative rules

Автор THeCMeX

Ответов: 18
Просмотров: 4871
Последний ответ 14.07.2023, 17:13:19
от art22
Ошибка при обновлении с 3.10.10. до 4.х

Автор svd2014

Ответов: 1
Просмотров: 2732
Последний ответ 13.02.2023, 19:53:08
от weser