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

monkozzz

  • Захожу иногда
  • 73
  • 0 / 0
Не могу зайти в раздел все материалы. Показывает пустую страницу и выкидывает ошибку

 500 - Произошла ошибка

DB function failed with error number 1054
Unknown column 'c.createdDESC' in 'order clause' SQL=SELECT c.*, g.name AS groupname, cc.title AS name, u.name AS editor, f.content_id AS frontpage, s.title AS section_name, v.name AS author FROM jos_content AS c LEFT JOIN jos_categories AS cc ON cc.id = c.catid LEFT JOIN jos_sections AS s ON s.id = c.sectionid LEFT JOIN jos_groups AS g ON g.id = c.access LEFT JOIN jos_users AS u ON u.id = c.checked_out LEFT JOIN jos_users AS v ON v.id = c.created_by LEFT JOIN jos_content_frontpage AS f ON f.content_id = c.id WHERE c.state != -2 AND c.sectionid = 1 ORDER BY c.createdDESC , section_name, cc.title, c.ordering LIMIT 0, 20

Как полечить?
*

monkozzz

  • Захожу иногда
  • 73
  • 0 / 0
Удалось вычислить откуда выплывает ошибка.

Для отображения фильтра по дате в разделе все материалы были внесены следующие изменения:

файл administrator\components\com_content\controller.php
Строчку
Код
      if (!$filter_order) {
         $filter_order = 'section_name';
      }
 
заменить на
Код
      if (!$filter_order) {
         $filter_order = 'c.created DESC';
      }

Востановил оригинальный controller.php - ошибка пропала... и пропала фильтрация по дате...

Как оставить фильтрацию и убрать ошибку?
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
c.createdDESC - это то что идет в запросе, конечно неправильно. Должно быть c.created DESC с пробелом.
*

monkozzz

  • Захожу иногда
  • 73
  • 0 / 0
файл administrator\components\com_content\controller.php
Строчку
Код
      if (!$filter_order) {
         $filter_order = 'section_name';
      }
 
заменить на
Код
      if (!$filter_order) {
         $filter_order = 'c.created DESC';
      }

я внес это именно с пробелом. но ошибку выдает всё-равно
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
ну не знаю.
Сейчас проверил у себя все работает как нужно.
Редактируете в Notepad++.
Потому что такого просто не может быть. Пишите одно а в ошибке появляется совсем другое.
*

nikonovdv

  • Новичок
  • 6
  • 2 / 0
Возникла также эта проблема.  !

DB function failed with error number 1054
Unknown column 'c.createdDESC' in 'order clause' SQL=SELECT

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

Не отображаются материалы и ссылки на сайте (joomla 1.5)

Автор МарияЛ

Ответов: 1
Просмотров: 2438
Последний ответ 17.03.2017, 20:33:56
от voland
Не могу удалить иконку поделиться в соц сетях

Автор kirill-juk

Ответов: 0
Просмотров: 1881
Последний ответ 03.11.2016, 16:08:53
от kirill-juk
Не могу сделать кликабельной шапку сайта

Автор Zegeberg

Ответов: 29
Просмотров: 3149
Последний ответ 21.06.2016, 13:02:48
от Zegeberg
Не могу избавиться от урлов с параметрами

Автор wings_fury

Ответов: 4
Просмотров: 1748
Последний ответ 29.10.2015, 04:05:42
от Филипп Сорокин
Удалить java скрипт - не могу найти, где подключается

Автор zobrfgfcgjhn

Ответов: 1
Просмотров: 2329
Последний ответ 05.03.2015, 13:48:30
от SeBun