Новости Joomla

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

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

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

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

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

🏆 Открыто голосование за Joomla в премии CMS Critic People’s Choice Awards 2025

🏆 Открыто голосование за Joomla в  премии CMS Critic People’s Choice Awards 2025

🗓 Голосование продлится до 27 февраля 2026 года.

👩‍💻 Проголосовать! 👩‍💻

Номинации, в которых можно проголосовать за Joomla:
⭐️ Best Free CMS
⭐️ Best Open Source CMS
⭐️ Best Enterprise CMS

Также в номинации Best e-Commerce Solution участвуют компоненты интернет-магазинов для Joomla:
⭐️ HikaShop
⭐️ Virtuemart

В номинации Best Website Builder оказались:
⭐️ YooTheme
⭐️ SP Page Builder

Что такое CMS Critic Awards?
С 2012 года премия CMS Critic Awards занимает особое место в сообществе систем управления контентом (CMS). Это единственный в своем роде сайт, который составляет рейтинг системы управления контентом и связанных с ними решений на рынке — от малого до крупного и подчеркивает их инновации и услуги.

Каждый год награда CMS Critic Awards присуждается одному победителю в различных отраслевых категориях, таких как: «Лучшая облачная CMS», «Лучший DXP», «Лучшая Headless CMS и других. Затем результаты оглашаются через СМИ вместе с выбором редакции CMS Critic.
В этом году премия вернулась к своим традициям и только TOP-5 движков по количеству номинаций попали в 2-й этап - голосование.

@joomlafeed

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

AndreN

  • Захожу иногда
  • 55
  • 1 / 0
Всех приветствую.
Сегодня в админке трех разных сайтов (на Joomla 3.8.2.), но сделанных из одного шаблона (стандартный Protostar) появилась ошибка "Call to a member function format() on null".
Ошибка возникает при входе в админку и при попытке войти в Панель управления админки. В любые другие разделы админки захожу без проблем.
Никакие работы на сайте не проводились. Все три сайта на одном хостинге, но между собой не связаны. Сами сайты работают хорошо.
Может кто-то сталкивался с подобной проблемой? Или есть идеи на сей счет?
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Ну обновляться бы почаще
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
По факту включите отображение ошибок
*

AndreN

  • Захожу иногда
  • 55
  • 1 / 0
Может хостер версию PHP повысил.
Уточнил, не повысил.
*

AndreN

  • Захожу иногда
  • 55
  • 1 / 0
Проблема решена!
Изменил версию php и проблема ушла.
Всем спасибо за участие!
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Проблема решена!
Изменил версию php и проблема ушла.
Всем спасибо за участие!
Но обновится все же вам совет
*

AndreN

  • Захожу иногда
  • 55
  • 1 / 0
Но обновится все же вам совет
Такое мнение тоже имеется, но есть допилы движка, которые после обновления слетят.
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Такое мнение тоже имеется, но есть допилы движка, которые после обновления слетят.
Ну иначе могут поломать
А доработки движка тоже дело хитрое
*

Evgeniy

  • Новичок
  • 3
  • 0 / 0
Здравствуйте, такая же проблема вылезла, подскажите на какую версию PHP вы поменяли чтобы всё заработало?
*

velyar

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Такая же фигня, но причину я знаю. У меня стояла версия PHP 7.0.11 и при заходе в админку постоянно светилось сообщение что с 01.12.2019 эта версия перестанет поддерживаться. Я думал это просто предупреждение на свой страх и риск, а оказывается в Joomla где-то заложено что с 01.12.2019 на этих версиях PHP убить твой сайт, а если включить версию 5.6 то админка Joomla умрёт полностью:)
Предполагаю что будет работать корректно на версии от 7.1 и выше.
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Такая же фигня, но причину я знаю. У меня стояла версия PHP 7.0.11 и при заходе в админку постоянно светилось сообщение что с 01.12.2019 эта версия перестанет поддерживаться. Я думал это просто предупреждение на свой страх и риск, а оказывается в Joomla где-то заложено что с 01.12.2019 на этих версиях PHP убить твой сайт, а если включить версию 5.6 то админка Joomla умрёт полностью:)
Предполагаю что будет работать корректно на версии от 7.1 и выше.
Что за бред?
Все на 5.6 прекрасно работает, так же как и на 7.1,7.2,7.3
*

velyar

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
у меня админка легла именно 01.12.2019
версия Joomla 3.7.5
На другом сайте с версией Joomla 3.9.11 с версией PHP 7.0.11 работает, но есть предупреждение.
Ошибка
Мы обнаружили, что ваш сервер использует версию PHP 7.0.11, которая является устаревшей и не получает официальные обновления от разработчиков. Проект Joomla рекомендует обновить ваш сайт до версии PHP 7.2 или более поздней версии, которые будут получать обновления для системы безопасности по крайней мере до 30.11.20. Пожалуйста, попросите вашего хостинг-провайдера, чтобы он сделал PHP 7.2 или более позднюю версию по умолчанию для вашего сайта. Если ваш хост уже готов к PHP 7.2 включите PHP 7.2 для корня вашего сайта и панели администрирования – как правило, вы можете сделать это самостоятельно через инструмент в вашей панели управления хостингом, но лучше всего спросить вашего хостинг-провайдера, если вы не уверены.
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
*

velyar

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Хотя странно конечно, проверил сейчас более старый сайт работает на Joomla 3.4.8 и PHP 5.3.28. И всё тут норм с админкой.
Неужели хостеры у меня что-то натворили.
Что на версии 3.7.5 и PHP 7.0.11 админка умерла.
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Уведомление то висит, но все работает
На 7.0.32 так же
*

velyar

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Уведомление то висит, но все работает
На 7.0.32 так же
Человек создал пост что у него в админке ошибка появилась 01.12.2019 как и у меня. Чтобы это могло быть?
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Человек создал пост что у него в админке ошибка появилась 01.12.2019 как и у меня. Чтобы это могло быть?
Тут сдожно сказать, но к оповещению отношения точно не имеет, да и в нем про 20 год
*

velyar

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Тут сдожно сказать, но к оповещению отношения точно не имеет, да и в нем про 20 год
Это на новой версии про 20 год, а в 3.7.5 было оповещение что 01.12.2019 прекратится поддержка этой версии PHP
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Может проблема именно в 7.0.1
Нет возможности проверить.
Минимальная семерка у хоста 0.32
*

velyar

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Может проблема именно в 7.0.1
Нет возможности проверить.
Минимальная семерка у хоста 0.32
Версия 7.0.11 а не 7.0.1 и возможности к сожалению нет, так как это единственная версия у моих.
*

velyar

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Если сайт переключить на версию PHP 5.6 то появляется вот такое:
Fatal error: Call to a member function format() on null in /home/c10636/public_html/plugins/quickicon/phpversioncheck/phpversioncheck.php on line 174
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Если сайт переключить на версию PHP 5.6 то появляется вот такое:
Fatal error: Call to a member function format() on null in /home/c10636/public_html/plugins/quickicon/phpversioncheck/phpversioncheck.php on line 174
Ругается на плагин что ввводит предупреждение о версии PHP
*

velyar

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Вот что я нашёл в этом плагине, видимо я был прав насчёт того что Joomla проверяет такую фигню.
Код
	private function getPhpSupport()
{
$phpSupportData = array(
'5.3' => array(
'security' => '2013-07-11',
'eos'      => '2014-08-14',
),
'5.4' => array(
'security' => '2014-09-14',
'eos'      => '2015-09-14',
),
'5.5' => array(
'security' => '2015-07-10',
'eos'      => '2016-07-21'
),
'5.6' => array(
'security' => '2016-12-31',
'eos'      => '2018-12-31'
),
'7.0' => array(
'security' => '2017-12-03',
'eos'      => '2018-12-03'
),
'7.1' => array(
'security' => '2018-12-01',
'eos'      => '2019-12-01'
),
);
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Вот что я нашёл в этом плагине, видимо я был прав насчёт того что Joomla проверяет такую фигню.
Код
	private function getPhpSupport()
{
$phpSupportData = array(
'5.3' => array(
'security' => '2013-07-11',
'eos'      => '2014-08-14',
),
'5.4' => array(
'security' => '2014-09-14',
'eos'      => '2015-09-14',
),
'5.5' => array(
'security' => '2015-07-10',
'eos'      => '2016-07-21'
),
'5.6' => array(
'security' => '2016-12-31',
'eos'      => '2018-12-31'
),
'7.0' => array(
'security' => '2017-12-03',
'eos'      => '2018-12-03'
),
'7.1' => array(
'security' => '2018-12-01',
'eos'      => '2019-12-01'
),
);
Это просто даты вывода оповещений.
Он уперся вкрай и дает ошибку.
А в чем причина?
Обновлять Joomla надо вовремя)))
По факту ничего страшного
*

velyar

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
В общем можно или изменить дату для своей версии PHP в этом файле или зайти в плагины и забить в поиск там "Панель иконок"(элемент phpversioncheck) и выключить его.
И будем вам счастье.
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Именно так
Или обновить джумла. Чтотправильнее
*

CrazyPr0ger

  • Осваиваюсь на форуме
  • 36
  • 2 / 0
Благодарю всех. проблема решилась сменой версии PHP на 7.1.30. После чего сразу обновил Joomla. Версия изначально была 3.8. обновил до 3.9
*

Stevsky

  • Новичок
  • 3
  • 0 / 0
Проблема точно в PHP
Обновлял последовательно на 7.1, 7.2 и только на 7.3 сайт завёлся.
Главное не терять надежды ))
*

mius

  • Осваиваюсь на форуме
  • 36
  • 1 / 0
Плюсую в пользу решения об обновлении. php 7.1.28, вырубилась админка Joomla 3.8. Спасло обновление до свежей 3.9.24.

Вообще, это очень странно, когда когда без изменения версии php и без изменения программного кода что-то в какой-то момент падает. Значит что-то где-то нюхает и сверяется с датой.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Ошибка Missing field in database: Joomla\CMS\Table\Extension   extension_id

Автор Ragivort

Ответов: 1
Просмотров: 1626
Последний ответ 25.12.2025, 21:10:01
от fbr
Стоит ли ставить плагин rel="canonical" на Joomla 3

Автор azm1n

Ответов: 2
Просмотров: 2891
Последний ответ 09.05.2025, 12:39:18
от azm1n
Не работает менеджер материалов, ошибка 500 SSL certificate problem

Автор Екатерина М

Ответов: 5
Просмотров: 2936
Последний ответ 06.04.2025, 09:27:20
от wishlight
Ошибка 0 Call to undefined function GuzzleHttp\choose_handler()

Автор Alllex

Ответов: 0
Просмотров: 1253
Последний ответ 15.03.2024, 21:03:09
от Alllex
Ошибка version_compare(): Argument #3 ($operator)

Автор Шмайсер

Ответов: 1
Просмотров: 1606
Последний ответ 07.11.2023, 20:44:21
от fsv