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

maxsl_89

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Добрый день,
Есть модуль с полями для информации, в основном текстовая.

Подскажите как инфо из этих полей использовать другим модулем? возможно ли это? или  может использоваться только в пределах одного модуля?
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Re: Текстовые поля в админке модуля
« Ответ #1 : 30.10.2013, 15:00:26 »
Код
$module = JModuleHelper::getModule('название модуля', 'заголовок модуля');
$params = new JRegistry();
$params->loadString($module->params);
die( var_dump($params) );
но он должен быть опубликованным на той же странице.
Либо делать отдельно запрос и вытягивать параметры модуля из таблицы #__modules, например по id
*

maxsl_89

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Re: Текстовые поля в админке модуля
« Ответ #2 : 30.10.2013, 15:28:24 »
Так я забраю текст в самом модуле
Код
//принимаем параметр с админки
$par->arr[title] = JText::sprintf('MOD_RESORTTEXT_PARAMETR_LABEL', $params->get('title'));
                $par->arr[text] = JText::sprintf('MOD_RESORTTEXT_PARAMETR_LABEL', $params->get('text'));
$par->arr[restype] = JText::sprintf('MOD_RESORTTEXT_PARAMETR_LABEL', $params->get('restype'));
$par->arr[order] = JText::sprintf('MOD_RESORTTEXT_PARAMETR_LABEL', $params->get('order'));
$par->arr[exchange] = JText::sprintf('MOD_RESORTTEXT_PARAMETR_LABEL', $params->get('exchange'));


А примерно так мне надо будет забрать это в новый модуль?

Код
   public static function getList(&$params)
    {

    $klub_resorts = JText::sprintf('MOD_TABLERESORTS_PARAMETR_LABEL', $params->get('klub_resorts'));

    $db = JFactory::getDbo();

$query = $db->getQuery(true);
$query->select('id, title, params');
$query->from('#__modules');
$query->where('catid = 145');
$db->setQuery($query);
$list = $db->loadObjectList();

return $list;
   
    }
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Re: Текстовые поля в админке модуля
« Ответ #3 : 30.10.2013, 15:34:55 »
Цитировать
$query->where('catid = 145');
где там catid?)

Код
	    $db	= JFactory::getDbo();

$query = $db->getQuery(true);
$query->select('params');
$query->from('#__modules');
$query->where('id = 145');
$db->setQuery($query, 0, 1);
$result = $db->loadResult();
if ($err = $db->getErrorMsg()) die($err);

if ($result) {
$params = new JRegistry();
$params->loadString($result);
echo $params->get('имя параметра');
}
*

maxsl_89

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Re: Текстовые поля в админке модуля
« Ответ #4 : 31.10.2013, 08:52:24 »
Все отлично работает, вытаскиваю все нужные поля.
Скажи, правильно ли я поступлю, если в один модуль буду тянуть инфу с 20-ти модулей такого типа?
не будет ли сильной нагрузки?
*

maxsl_89

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
Re: Текстовые поля в админке модуля
« Ответ #5 : 04.11.2013, 16:02:22 »
Подскажите, плз, как сделать чтоб в данные поля можно было вводить теги HTML
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Текстовые поля в админке модуля
« Ответ #6 : 04.11.2013, 16:25:04 »
Полю указать атрибут filter="RAW"
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вставка кода вызова модуля в тело шаблона другого модуля

Автор Dorfman

Ответов: 15
Просмотров: 2956
Последний ответ 19.11.2018, 21:45:54
от beliyadm
Нужна помощь в доработке модуля под Joomla 3

Автор kik84

Ответов: 5
Просмотров: 3153
Последний ответ 30.01.2018, 22:40:30
от Елeна
Выбор пользователя в модальном окне в админке

Автор orexov_m

Ответов: 0
Просмотров: 1271
Последний ответ 11.04.2017, 11:35:43
от orexov_m
Модификация модуля lastet_news вывод времени перед заголовком

Автор Morphiss

Ответов: 9
Просмотров: 2813
Последний ответ 19.04.2016, 12:41:55
от spsyper
Создание платного модуля

Автор fiter

Ответов: 7
Просмотров: 2156
Последний ответ 04.08.2014, 18:27:05
от neo85r