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

shubaden

  • Новичок
  • 5
  • 0 / 0
Есть ли возможность прописать как нибудь в форме, что в случае выбора страны, ниже выдается список городов выбраной страны, потом отелей? Необходимо для http://dom-sea.com.ua/turagenstvo.html
*

shubaden

  • Новичок
  • 5
  • 0 / 0
Смогли решить эту задачу собсвенными силами. Обращайтесь если что.
*

olegtlt

  • Осваиваюсь на форуме
  • 23
  • 1 / 0
Смогли решить эту задачу собсвенными силами. Обращайтесь если что.
Буду признателен за описание решения. 
*

Duckoff

  • Захожу иногда
  • 63
  • 2 / 1
  • Duckoff Music
Обращаюсь! :)

Очень срочно нужно сделать подчиненные списки
*

sergeyhopper

  • Новичок
  • 5
  • 0 / 0
Как сделать подчинённые списки, очень надо
*

curt-ain

  • Осваиваюсь на форуме
  • 15
  • 2 / 0
возьми пример и разберись. какие проблемы то?
при большом желании можно прикрутить базу, а не ручкам делать.

[вложение удалено Администратором]
*

Neo

  • Новичок
  • 6
  • 0 / 0
Лично я нифига не понял
*

curt-ain

  • Осваиваюсь на форуме
  • 15
  • 2 / 0
что конкретно не ясно? Для начала в "бэкап/ресторе" загружаешь пример. Item первого селекта заполни странами, и на onchange повесь скрипт, который пишется в Form Layout. По примеру с автомобилями заполняешь массив. соответственно второй селект будет заполняться согласно массиву и выбору в первом селекте.
*

Butos

  • Осваиваюсь на форуме
  • 23
  • 0 / 0

curt-ain
, ошибку выводит при импорте...

Версия RSForm!Pro 1.2.0 rev 25, очень хочется взглянуть на пример подчинённых списков, спасибо!

Код
QUERY ERROR INSERT INTO `jos_rsform_forms` (`FormId`,`FormName`,`FormLayout`,`FormLayoutName`,`FormLayoutAutogenerate`,`FormTitle`,`Published`,`Lang`,`ReturnUrl`,`Thankyou`,`UserEmailText`,`UserEmailTo`,`UserEmailCC`,`UserEmailBCC`,`UserEmailReplyTo`,`UserEmailFrom`,`UserEmailFromName`,`UserEmailSubject`,`UserEmailMode`,`UserEmailAttach`,`UserEmailAttachFile`,`AdminEmailText`,`AdminEmailTo`,`AdminEmailCC`,`AdminEmailBCC`,`AdminEmailReplyTo`,`AdminEmailFrom`,`AdminEmailFromName`,`AdminEmailSubject`,`AdminEmailMode`,`ScriptProcess`,`ScriptProcess2`,`ScriptDisplay`) VALUES ('','Dynamic-Drop-down','
\r\n {CarManufacturer:caption} (*)
\r\n {CarManufacturer:body}
\r\n {CarManufacturer:validation}\r\n {CarManufacturer:description}
\r\n {CarModel:caption} (*)
\r\n {CarModel:body}
\r\n {CarModel:validation}\r\n {CarModel:description}
\r\n {Script:caption}
\r\n {Script:body}
\r\n {Script:validation}\r\n {Script:description}
\r\n
\r\n\r\n','2lines','0',' Dynamic Drop-down change form example ','1','','','','','','','','','','','','1','0','C:\\xampp\\htdocs\\j159/components/com_rsform/uploads/','','','','','','','','','1','','','' )
QUERY ERROR INSERT INTO `jos_rsform_components` (`ComponentId`,`FormId`,`ComponentTypeId`,`Order`,`Published`) VALUES ('','0','3','1','1' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','NAME','CarManufacturer' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','CAPTION','Car Manufacturer' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','SIZE','' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','MULTIPLE','NO' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','ITEMS','|Please select a manufacturer\r\nAudi\r\nDacia\r\nFIAT\r\nPeugeot\r\nSEAT\r\nSkoda' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','REQUIRED','YES' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','ADDITIONALATTRIBUTES','onchange=\"dynamic1(this,\'CarModel\');\"' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','DESCRIPTION','' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','VALIDATIONMESSAGE','Please select a model' )
QUERY ERROR INSERT INTO `jos_rsform_components` (`ComponentId`,`FormId`,`ComponentTypeId`,`Order`,`Published`) VALUES ('','0','3','2','1' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','NAME','CarModel' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','CAPTION','Car Model' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','SIZE','' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','MULTIPLE','NO' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','ITEMS','|Please select a model' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','REQUIRED','YES' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','ADDITIONALATTRIBUTES','' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','DESCRIPTION','' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','VALIDATIONMESSAGE','Please select a car model' )
QUERY ERROR INSERT INTO `jos_rsform_components` (`ComponentId`,`FormId`,`ComponentTypeId`,`Order`,`Published`) VALUES ('','0','10','3','1' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','NAME','Script' )
QUERY ERROR INSERT INTO `jos_rsform_properties` (`PropertyId`,`ComponentId`,`PropertyName`,`PropertyValue`) VALUES ('','0','TEXT','' )

Warning: unlink(z:\home\localhost\www\e\media\dynamic-drop-down-change-form-example-for-joomla.zip) [function.unlink]: No such file or directory in z:\home\localhost\www\e\components\com_rsform\rsform.class.php on line 146
« Последнее редактирование: 16.05.2010, 01:17:27 от Butos »
*

curt-ain

  • Осваиваюсь на форуме
  • 15
  • 2 / 0
Butos, всё нормально работает, версия у меня такая же.Ощущение что криво стоит сам конпонент. Опиши более подробнее что куда делаешь, ибо не экстресенсы
пример формы на этом принципе глянь тут
« Последнее редактирование: 24.05.2010, 14:33:33 от curt-ain »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться