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

Gudini

  • Новичок
  • 3
  • 1 / 0
Предлагаю решение для возможности скрывать/показывать разделы любой вложенности при добавлении записи.
Т.к. не нашел решения, решил чуть подправить компонент.

Задача:
Есть многоуровневые разделы вида
Статьи
 - Автотюнинг
 - - Статьи автотюнинг от профессионалов
 - - Статьи автотюнинг своими руками
 - - Статьи автотюнинг быстрые решения
 - Автомастерская
 - ....
Новости
 - ...

1. надо сделать так что-бы пользователь мог добавлять статьи в 3 ветку (Статьи автотюнинг от профессионалов и тд), но немог в корневые (Статьи, Новости, Автотюнинг)

2. сделать закрытые для публикации пользователем разделы или подразделы

стандартно я добился только скрытия в форме добавления корневой раздел (Статьи)

Решение:
Код
1. для скрытия запрещенных к публикации категорий в добавлении материала, теперь "Show Categories in Form" реально скрывает категорию
---------------------------------------------------
Файл components\com_resource\models\article.php
Строка 110
Добавленно:
$out = array();

Строка 128
Добавленно:
if ($cp->def('show_category') == 0)
{
$add = $this->_getCategories($r->value, $level + 1, $params, $record);
if(is_array($add)) $out = array_merge($out, $add);
continue;
}


---------------------------------------------------
Файл administrator\components\com_resourceconfig.xml
строка 221
Добавленно:
<param name="show_category" type="radio" default="" label="Show Categories in Form" description="Show category in add arcticle form">
<option value="0">No</option>
<option value="1">Yes</option>
</param>

---------------------------------------------------
Файл administrator\components\com_resourceconfig_g.xml
Строка 200
Добавленно:
<param name="show_category" type="radio" default="" label="Show Categories in Form" description="Show category in add arcticle form">
<option value="">Global</option>
<option value="0">No</option>
<option value="1">Yes</option>
</param>

В итоге в каждом разделе/подразделе появляется радиобуттон "Show Categories in Form"



Надеюсь кому пригодится  *DRINK*
*

timonnn

  • Захожу иногда
  • 366
  • 15 / 0
Огромнейшее спасибо. То, что надо...
Лови+
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться