Новости Joomla

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

В процессе работы с Joomla бывает необходимо работать с пользовательским интерфейсом более тонко, чем обычно. Все формы Joomla состоят из стандартных полей, содержанием, стилем отображения, состоянием (включено/выключено, доступно для редактирования или нет и т.д.) можно управлять с помощью плагинов. Да и для нестандартных проектов хорошей практикой является создание одного системного или нескольких плагинов групп "под проект", в которых храниться весь "нестандарт".

В этой статье описаны все триггеры, которые вызываются через Event Dispatcher из administrator/components/com_fields/src/Helper/FieldsHelper.php, с привязкой к жизненному циклу (порядку этапов работы запроса), аргументам, изменяемым данным и дальнейшему распространению по Joomla. Это поможет вам работать с Joomla свободнее и не опасаясь при этом потерять изменения при очередном обновлении движка.

Подходы, описанные в статье, полезны в тех случаях, когда вы работаете с данными в com_fields - механизме создания и редактирования пользовательских полей ядра Joomla и при использовании FieldsHelper. Многие сторонние компоненты не используют эту возможность, поэтому данная статья будет полезна лишь частично.

Читать статью на Хабре.

@joomlafeed

🏆 Открыто голосование за 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 Гость просматривают эту тему.
  • 1332 Ответов
  • 219135 Просмотров
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
« Последнее редактирование: 10.06.2019, 13:06:27 от varX »
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

Kamiza

  • Новичок
  • 1
  • 0 / 0
Итог = х * (select1+select2). Несколько дней пытаюсь реализовать такую логику: стоимость одного экземпляра умножить на коэффициент получившийся в результате сложения двух других коэффициентов. Ни как не пойму, как изменить очередность выполнения арифметических действий.  Помогите пожалуйста ! .
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Итог = х * (select1+select2). Несколько дней пытаюсь реализовать такую логику: стоимость одного экземпляра умножить на коэффициент получившийся в результате сложения двух других коэффициентов. Ни как не пойму, как изменить очередность выполнения арифметических действий.  Помогите пожалуйста ! .

По умолчанию, все математические операции в форме считаются в порядке следования элементов по правилам простой арифметики (скобки в алгоритм не заложены, т.к. это невозможно с клонированием и вложенностью). Но есть формулы калькулятора, которые меняют саму арифметическую логику. Попробуйте их использовать, вам оба должны подойти. Кроме того, клон, если его использовать, всегда обсчитывается как отдельный элемент, т.е. можно в нем просуммировать.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

Kostelano

  • Давно я тут
  • 525
  • 52 / 1
Не нашел подобной строки в языковых файлах. Проблема не решается даже путем добавления строки в файл локализации.



Решилась только переопределением константы в менеджере языков.
*

dragon4x4

  • Захожу иногда
  • 196
  • 7 / 0
Каким же образом, в настройках сайта, сделать так чтобы в отправляемой форме администратору, в качестве адреса отправителя, всталялся адрес заполняющего форму и Имя заполняющего форму.
Так же не могу понять как в языковых файлах сделать так, чтобы в качестве темы, вставлялось название именно той формы, которую заполняют и отправляют.

удалось кому решить проблему ? можете поделиться ? (можно и в личку)
Спасибо
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
удалось кому решить проблему ? можете поделиться ? (можно и в личку)
Спасибо
Вам нужно вносить изменеия в код, чтобы так сделать. Файл /components/com_quickform/quickform.php,  функция $mailer->setSubject(); задает тему письма. Название самой формы находится в переменной $row->title.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

dragon4x4

  • Захожу иногда
  • 196
  • 7 / 0
спасибо... а строчку имени заполняющего форму можно добавить в том же месте ? к примеру первая сртрочка Город, вторая Имя... как ее правильно вставить в тему ?
« Последнее редактирование: 30.01.2015, 22:37:13 от dragon4x4 »
*

Vas80

  • Захожу иногда
  • 238
  • 0 / 1
Установил на Joomla 3.0.
http://539687.fdcorp.web.hosting-test.net/jcontent.html
Поля пустые. Нажимаю отправить. Отправляет без заполненной информации. Как настроить, чтобы при пустых полях форма не отправлялась?
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Установил на Joomla 3.0.
http://539687.fdcorp.web.hosting-test.net/jcontent.html
Поля пустые. Нажимаю отправить. Отправляет без заполненной информации. Как настроить, чтобы при пустых полях форма не отправлялась?
Нужно пометить эти поля как обязательные, тогда они проверяться будут. Слева от полей есть звездочки, если она красная - поле обязательное.
« Последнее редактирование: 01.02.2015, 14:51:35 от lcd25 »
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

Vas80

  • Захожу иногда
  • 238
  • 0 / 1
Работает! Все супер! Легко и доступно. Но сам бы не догадался нажать на звездочки. Благодарствую!
*

a7554849

  • Новичок
  • 1
  • 0 / 0
День добрый.
Подскажите как и где изменить текст сообщения об отправке письма?
Хочу сменить "Письмо было успешно отправлено." на что-то более конкретное.

Заранее огромное спасибо.
*

Donec2009

  • Захожу иногда
  • 93
  • 0 / 0
Здравствуйте! У меня такой вопрос, а точнее прошу помощи, задача такая натяжные потолки нужно сделать так чтоб когда пользователь вводил ширину и длину помещения высчитывалась маскировочная лента по тем показателям которые он ввел, пример- Полотно стоит 300 руб кв.м пользователь ввел ширину комнаты 10 длину комнаты 10 итог 30 000 руб но если пользователь поставит галочку маскировачная лента которая стоит 60 руб. м. то произведется подсчет периметра прямоугольника то есть ( ( 10 +10 ) *2 ) *60 вообщем нужно сделать также как на этом сайте http://xn----8sbihnlgdvbak1bd4o.xn--p1ai/
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Здравствуйте! У меня такой вопрос, а точнее прошу помощи, задача такая натяжные потолки нужно сделать так чтоб когда пользователь вводил ширину и длину помещения высчитывалась маскировочная лента по тем показателям которые он ввел, пример- Полотно стоит 300 руб кв.м пользователь ввел ширину комнаты 10 длину комнаты 10 итог 30 000 руб но если пользователь поставит галочку маскировачная лента которая стоит 60 руб. м. то произведется подсчет периметра прямоугольника то есть ( ( 10 +10 ) *2 ) *60 вообщем нужно сделать также как на этом сайте http://xn----8sbihnlgdvbak1bd4o.xn--p1ai/

Этот компонент использует простую арифметику при калькуляции. Если вам нужны собственные формулы, тогда их нужно дописывать, что из-за сложности кода, самостоятельно будет трудно сделать. Кроме того, пример, который вы привели, просто делается по индивидуальному заказу, простым плагином или модулем. В нем нет сложных зависимостей, на которые компонент ориентирован. Имеется в виду, что QuickForm строит динамические формы, вам это не нужно. Хотя соглашусь, что не плохо было бы сделать простой и удобный интерфейс, в котором можно моделировать индивидуальные математические формулы.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

css_ufa

  • Захожу иногда
  • 182
  • 10 / 0
Здравствуйте! Данный компонент остался для версии 1.5.26?
*

Masyarach

  • Новичок
  • 1
  • 0 / 0
Добрый день!
не судите строго, я начинающий "создатель" сайтов)))
сайт на Joomla 3, первый раз я успешно установила эту замечательную форму, все работало отменно, но после того как сайт переехал на другой хостинг (хостинг нашей организации) мой любимый модуль не работает. Суть проблемы вот в чем: модуль и плагин установлены, но когда я пытаюсь создать форму через компонент - ничего не получается. Помогите, почему так?
! ! ! ! ! !
*

GWork

  • Захожу иногда
  • 123
  • 1 / 0
Добрый день!
Сколько возьмете за разработку на вашем калькуляторе подобного решения? http://www.breegs.ru/calculator
У самого времени нет разбираться как это правильно реализовать.
*

Mariannka

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Здравствуйте!
Попробовала данный компонент, прикрепленный файл приходит на почту, а копия файла где-то остается на сервере? Нужно чтобы отправленные файлы так же попадали на хостинг.
*

Mariannka

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Добрый день!
не судите строго, я начинающий "создатель" сайтов)))
сайт на Joomla 3, первый раз я успешно установила эту замечательную форму, все работало отменно, но после того как сайт переехал на другой хостинг (хостинг нашей организации) мой любимый модуль не работает. Суть проблемы вот в чем: модуль и плагин установлены, но когда я пытаюсь создать форму через компонент - ничего не получается. Помогите, почему так?
! ! ! ! ! !
Чтобы вам помогли, нужно более подробно описывать суть проблемы.
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Здравствуйте!
Попробовала данный компонент, прикрепленный файл приходит на почту, а копия файла где-то остается на сервере? Нужно чтобы отправленные файлы так же попадали на хостинг.

Файлы попадают во временную папку на вашем сервере, но компонентом они не обрабатываются, поскольку это мало кому нужно. Он только отправляет на почту их электронные копии.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

Kostelano

  • Давно я тут
  • 525
  • 52 / 1
Добрый вечер.

Компонент можно подружить с включенным кешем? С включенным кешем после заполнения формы получаю страницу "Invalid Token", с выключенным - работает.

Спасибо.
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Добрый вечер.

Компонент можно подружить с включенным кешем? С включенным кешем после заполнения формы получаю страницу "Invalid Token", с выключенным - работает.

Спасибо.

Кэш - это зло. Есть плагин, который отключает кэширование на нужных страницах индивидуально. Попробуйте его.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

posmetuhov

  • Новичок
  • 9
  • 0 / 0
Здравствуйте!

Что может быть за проблема выдает во такие ошибки



Внимание

        Не удалось вызвать функцию mail.

        В процессе обработки вашего запроса произошла ошибка.

*

wolh

  • Новичок
  • 3
  • 0 / 0
Доброго дня
Попробовал установить компонент, но столкнулся с тем, что в админке создания форм отказываются работать какие-либо кнопки. Причем остальные, как в модуле, так и в управляющем меню компонента нормально работают.

Подозреваю, это либо из-за Joomla 3.4.0, либо из-за перекрытия каких то скриптов
Что можно попробовать с этим сделать?
http://diznetic.com
« Последнее редактирование: 26.02.2015, 19:32:22 от wolh »
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Здравствуйте!

Что может быть за проблема выдает во такие ошибки

Внимание
        Не удалось вызвать функцию mail.
        В процессе обработки вашего запроса произошла ошибка.

Это сообщение говорит, что у вас, скорее всего, не настроена почта (в Joomla или на сервере).

Доброго дня
Попробовал установить компонент, но столкнулся с тем, что в админке создания форм отказываются работать какие-либо кнопки. Причем остальные, как в модуле, так и в управляющем меню компонента нормально работают.

Подозреваю, это либо из-за Joomla 3.4.0, либо из-за перекрытия каких то скриптов
Что можно попробовать с этим сделать?

Очевидно, что с js проблемы. Ищите в индивидуальных особенностях вашего сайта. js - штука капризная, может до половины работать и останавливаться. Плюс еще в каждом браузере по разному. А виноват будет кусок кода от левого модуля.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

Kostelano

  • Давно я тут
  • 525
  • 52 / 1
Добрый вечер.

Компонент можно подружить с включенным кешем? С включенным кешем после заполнения формы получаю страницу "Invalid Token", с выключенным - работает. Спасибо.

Кэш - это зло. Есть плагин, который отключает кэширование на нужных страницах индивидуально. Попробуйте его.

Решил иначе - кешированием в браузере пользователей. В ".htacess" добавил:

Код
########## Прогрессивное кеширование в браузере пользователя
SetOutputFilter DEFLATE
Header set Expires "max-age=29030400, public"
Header unset ETag
FileETag None

ExpiresActive On
ExpiresDefault A86400
ExpiresByType application/x-javascript A604800
ExpiresByType application/x-shockwave-flash A2592000
ExpiresByType application/pdf A2592000
ExpiresByType text/css A604800
ExpiresByType text/plain A86400
ExpiresByType text/html A86400
ExpiresByType image/x-icon A2592000
ExpiresByType image/gif A2592000
ExpiresByType image/png A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/jpg A2592000
ExpiresByType video/x-flv A2592000
ExpiresByType font/x-woff A2592000
*

wolh

  • Новичок
  • 3
  • 0 / 0
Это сообщение говорит, что у вас, скорее всего, не настроена почта (в Joomla или на сервере).

Очевидно, что с js проблемы. Ищите в индивидуальных особенностях вашего сайта. js - штука капризная, может до половины работать и останавливаться. Плюс еще в каждом браузере по разному. А виноват будет кусок кода от левого модуля.

http://lvkr.ru/CYEpKm.jpg
а вот по этому куску вы не сможете что-то подсказать? пробовал включать скрипты по минимуму, но что то все никак не удается наладить
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
http://lvkr.ru/CYEpKm.jpg
а вот по этому куску вы не сможете что-то подсказать? пробовал включать скрипты по минимуму, но что то все никак не удается наладить
вероятно, нет mootools или он не выводится, но это не по картинкам нужно смотреть.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

wolh

  • Новичок
  • 3
  • 0 / 0
хм, да, mootols насильно придавливал, так как вроде бы и не требовался
благодарю, буду ковырять в эту сторону
/upd да, после подключения мотулса все заработало :)
//upd так как в личку отвечать не могу, напишу здесь)) подключил вероятно довольно костыльным и не самым правильным способом, но уж как умею.
в файл head.php из папки /libraries/joomla/document/html/renderer дописал строки $buffer .= $tab . '<script src="/media/system/js/mootools-more.js"></script>' . $lnEnd; и $buffer .= $tab . '<script src="/media/system/js/mootools-core.js"></script>' . $lnEnd; перед блоком "// Generate script language declarations". :)
« Последнее редактирование: 28.02.2015, 01:06:47 от wolh »
*

Kostelano

  • Давно я тут
  • 525
  • 52 / 1
Та же проблема, что и у пользователя выше. Только его решение не подходит.

Подключил в шаблоне isis вызовом

Код
JHtml::_('behavior.framework', $type);

Начали работать кнопки, но все равно есть какие-то невнятные символы в админке компонента.



В общем и целом, с отключением mootools в Joomla 3.4.0 хороший компонент перестал частично функционировать ))

1. Уважаемый автор, будет какое-то обновление/заплаточка для Joomla 3.4.0? >:(

2. И еще вопрос всем: как и где правильно подключить mootools?

UPD. Слово "удалить", которое на картинке иероглифами, никак не получается вернуть в исходный вид. Языковой файл в UTF-8, пробовал добавить константу JTOOLBAR_DELETE="удалить", но все равно на выходе - иероглифы. Хотя если написать латинскими буквами, то иероглифы исчезают, но само слово полностью переводится в нижний регистр символов. Короче  :o
« Последнее редактирование: 28.02.2015, 21:35:48 от Kostelano »
*

quake3

  • Захожу иногда
  • 131
  • 3 / 0
Добрый день.
 Подскажите пожалуйста где почитать мануал по работе с компонентом, а то не очень понял как он работает и подойдет ли к моей задаче.

В форме нужно выбирать товар из списка (добавлять, если нужно несколько товаров), вводить количество каждого товара + иметь поле для ввода скидки, т.е. сумма стоимостей товаров просто умножается на введенное в это поле значение (0,1 = 10% к примеру) И внизу получать итоговую сумму со скидкой.

Если это реализуемо, то как? Я ввел в выпадающий список товары, далее значок + и цену каждого товара. После этого добавил поле price, а оно выводит NaN.
Не понятна логика расчетов.. Что с чем складывается, откуда берутся значения и т.д.
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
будет какое-то обновление/заплаточка для Joomla 3.4.0?


Постараюсь в ближайшие дни посмотреть.

Подскажите пожалуйста где почитать мануал по работе с компонентом, а то не очень понял как он работает и подойдет ли к моей задаче.

Читайте форум, никто не будет вникать в вашу задачу или решать ее бесплатно. Мануала нет, интерфейс интуитивный.
« Последнее редактирование: 02.03.2015, 13:30:41 от lcd25 »
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Radical Form - бесплатная ajax форма обратной связи, которая не ломает дизайн

Автор Progreccor

Ответов: 311
Просмотров: 58002
Последний ответ 22.01.2026, 02:23:57
от quip
QuickForm 3 - конструктор простых и сложных форм

Автор varX

Ответов: 1107
Просмотров: 106232
Последний ответ 21.10.2025, 03:19:37
от varX
QuickForm 2 - конструктор форм с зависимыми полями и калькулятором

Автор varX

Ответов: 1351
Просмотров: 128482
Последний ответ 03.10.2022, 22:34:40
от dodsik
AJAX Web-Factor Form - простая форма обратной связи для Joomla 3+

Автор orsy

Ответов: 75
Просмотров: 23220
Последний ответ 17.07.2021, 10:01:40
от Biss
Форма обратной связи для Joomla 2.5

Автор ForQue

Ответов: 0
Просмотров: 4351
Последний ответ 10.01.2021, 10:57:08
от ForQue