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

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
textarea как в модуле mod_custom?
« : 26.08.2013, 15:37:32 »
В своем модуле хочу сделать такое поле с редактором, как в этом системном модуле, кто расскажет в чем там фишка?

Добавить в параметры своего модуля такое поле с редактором - не проблема, но
1. неудобно, из-за того что параметры выводятся справа - это окно мешается
2. непривычно, что не на своем месте, то есть не слева, как обычно...

ну и данные соответственно пишутся не в 'content', а в params
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: textarea как в модуле mod_custom?
« Ответ #1 : 26.08.2013, 17:23:27 »
Оу когда то мы тут поднимали эту тему..
 и когда я немножко порыл код то оказалось что в файле /administrator/components/com_modules/views/module/tmpl/edit.php прописана такая строчка
Код: php
$hasContent = empty($this->item->module) || $this->item->module == 'custom' || $this->item->module == 'mod_custom';
как вариант переопределить в шаблоне админки этот файл /administrator/components/com_modules/views/module/tmpl/edit.php и строку
Код: php
$hasContent = empty($this->item->module) || $this->item->module == 'custom' || $this->item->module == 'mod_custom';
заменить на
Код: php
$hasContent = true;

либо добавить в условие ваш модуль (ато если в true поставить то будет у всех модулей выводится контент )
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
Re: textarea как в модуле mod_custom?
« Ответ #2 : 26.08.2013, 18:06:09 »
эхх, получается из самого модуля эту штуку не включить?....так не интересно (
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: textarea как в модуле mod_custom?
« Ответ #3 : 26.08.2013, 18:17:04 »
эхх, получается из самого модуля эту штуку не включить?....так не интересно (
увы не включить (
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
Re: textarea как в модуле mod_custom?
« Ответ #4 : 26.08.2013, 18:22:23 »
жаль....чуда не случилось
а плагином подцепить тоже не вариант? если системный плагин для админки написать
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: textarea как в модуле mod_custom?
« Ответ #5 : 26.08.2013, 18:25:54 »
жаль....чуда не случилось
а плагином подцепить тоже не вариант? если системный плагин для админки написать
это один из вариантов, но в плагине придется по сути переподключать шаблон вывода этого файла /administrator/components/com_modules/views/module/tmpl/edit.php
ибо в нем жестко заглушена проверка на тип модуля, и если это не mod_custom то редактор не выведет (
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
Re: textarea как в модуле mod_custom?
« Ответ #6 : 26.08.2013, 18:33:15 »
ну ясно, хотя бы так - в пакете будет модуль и плагин для админки, а то переопределять шаблон не всегда удобно, особенно если это надо не на одном сайте, а на нескольких и прыгай потом, в общем, суть понятна. спасибо
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
Re: textarea как в модуле mod_custom?
« Ответ #7 : 27.08.2013, 01:54:16 »
я не могу уснуть...как же так полнейшее разочарование...

и вот эта вся колонка -

ради одного этого custom модуля?....не может быть...

и хакнуть этот mod_custom не хакнешь...и параметры в него не добавить и в тоже время в своем модуле не резон такие объемы данных хранить в параметрах, нужно именно поле content...
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: textarea как в модуле mod_custom?
« Ответ #8 : 27.08.2013, 02:03:43 »
я тоже был в шоке от увиденного! честно говоря не понятно зачем было вводить колонку и не дать пользовательским модулям возможность без хака писать в ней..
но строка
Код: php
$hasContent = empty($this->item->module) || $this->item->module == 'custom' || $this->item->module == 'mod_custom';
говорит нам пшли нафиг, тут только mod_custom
уже говорил в другой теме, написать бы разрабам что бы дали возможность в модуле выставлять какой то параметр что бы была возможность включать эту опцию ( но я не силен в английском (
и меня печалит тот факт что вроде в таком мощном и гибком движке такой затык(

ещё как вариант - переопределять плагином /administrator/components/com_modules/views/module/view.html.php и в нем в методе display() дописать строку $this->item->module = 'custom';
рылся долго но возможность как то по другому это сделать увы не нашел (
« Последнее редактирование: 27.08.2013, 02:22:57 от Istaan »
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Re: textarea как в модуле mod_custom?
« Ответ #9 : 27.08.2013, 16:58:05 »
для Joomla 3+
файл положить в директорию modules/mod_mymodule/fields
в XML модуле добавить
Код
<fieldset name="basic" addfieldpath="modules/mod_mymodule/fields">
...
<field name="content" type="myeditor" filter="saveHTML" />
</fieldset>
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: textarea как в модуле mod_custom?
« Ответ #11 : 27.08.2013, 17:35:31 »
SmokerMan неплохой вариант, я как то не подумал что можно и свое поле дописать ))
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как использовать функции компонента в модуле?

Автор specialist-web

Ответов: 6
Просмотров: 1524
Последний ответ 12.05.2019, 12:26:10
от AlekVolsk
Запустить контент-плагин в модуле

Автор mohax

Ответов: 10
Просмотров: 5510
Последний ответ 30.03.2015, 18:04:20
от twins717
AJAX в модуле

Автор bykaVBS

Ответов: 3
Просмотров: 1850
Последний ответ 27.03.2014, 20:02:17
от bykaVBS
j2.5: Как получить в модуле значение переменной из другого модуля?

Автор borzometr

Ответов: 8
Просмотров: 2679
Последний ответ 14.03.2014, 21:43:02
от Fedor Vlasenko
Форма в модуле

Автор VVE2013

Ответов: 1
Просмотров: 1205
Последний ответ 14.01.2014, 11:32:43
от entelexiya