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

x1

  • Давно я тут
  • 637
  • 15 / 0
  • Linux — это Windows для бытовой техники
Перед установкой QF2, старый нужно было деинсталлировать. Об этом везде написано.
Таблица  _quickform осталась после деинсталляции QF1, только сейчас заметил. Создаю в QF2 формы, все работает, в файл _quickform ничего недобавляется. Эту таблицу я хочу удалить вручную, можно?
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Таблица  _quickform осталась после деинсталляции QF1, только сейчас заметил. Создаю в QF2 формы, все работает, в файл _quickform ничего недобавляется. Эту таблицу я хочу удалить вручную, можно?

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

x1

  • Давно я тут
  • 637
  • 15 / 0
  • Linux — это Windows для бытовой техники
При деинсталляции компонента ничего не остается, никаких таблиц. В ручную вам сложно будет все подчистить, кроме таблицы  много всего может оставаться.
Ну у меня осталась же таблица! И потом, что значит многое чего? Если вы о кэше, то почистим, или вы имеете ввиду, что ваш компонент пишет еще что то в таблицы других компонентов или таблицы Joomla? И потом, на локалхосте уж я точно могу проверить всю базу и папки. Просто пожалуйста перечислите, что нужно удалить от версии qf1.
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Ну у меня осталась же таблица! И потом, что значит многое чего? Если вы о кэше, то почистим, или вы имеете ввиду, что ваш компонент пишет еще что то в таблицы других компонентов или таблицы Joomla? И потом, на локалхосте уж я точно могу проверить всю базу и папки. Просто пожалуйста перечислите, что нужно удалить от версии qf1.
При деинсталляции, компонент удаляет свои таблицы в базе и файлы в файловой системе. Если у вас таблица не удалена, значит деинсталляции не было, или она была с ошибками, что тоже самое в данном случае. Соответственно, в зависимости от ситуации, могли не удалиться любой файл или любая таблица или все вообще. Я же вам написал, как почистить сайт полностью от QF за 2 минуты. В чем проблема?
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

angst

  • Осваиваюсь на форуме
  • 39
  • 0 / 0
Подскажите, как стилизовать backemail . В отличии от чекбокса, над ним в шаблоне есть <div class="qf2 qfbackemail"> и <label class="qf2label">. Как правильно отключить эти классы в шаблоне, чтобы другие формы не рушились?
*

n1x0n

  • Новичок
  • 5
  • 1 / 0
Подскажите, как стилизовать backemail . В отличии от чекбокса, над ним в шаблоне есть <div class="qf2 qfbackemail"> и <label class="qf2label">. Как правильно отключить эти классы в шаблоне, чтобы другие формы не рушились?
Если форма с backemail одна, то
в CSS файле:
div.qf2.qfbackemail{
ваши стили
}
div.qf2.qfbackemail label.qf2label{
ваши стили
}
Если много а редактировать стили  у одной:
Класс или идентификатор родительского тега в котором находится форма - допустим секция: "о нас"
 <div class="about">
в нем ваша форма quick form....
</div>
тогда:
.about div.qf2.qfbackemail{
ваши стили
}
.about div.qf2.qfbackemail label.qf2label{
ваши стили
}
« Последнее редактирование: 14.12.2017, 01:42:22 от n1x0n »
*

Inferno

  • Новичок
  • 6
  • 0 / 0
Добрый день, имеется форма 1, в ней поля А и Б, можно ли как то вызвать форму 1 с полями Б?
*

angst

  • Осваиваюсь на форуме
  • 39
  • 0 / 0
Если форма с backemail одна, то....
Таким образом появляется новая форма, но она неактивна, находится выше нашей спрятаной истинной формы, а не оборачивает её
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Добрый день, имеется форма 1, в ней поля А и Б, можно ли как то вызвать форму 1 с полями Б?
Под формой, вы, наверное, группу полей подразумеваете? Форма - это то, что у вас на странице выводится, со всеми полями и кнопкой отправки. При помощи QuickForm вы ее можете сконструировать. А вызвать на страницу можно только проект, группа полей - это не форма, это какой-то набор полей, который можно использовать в процессе конструирования. Он не делимый кирпичик, соответственно, вам нужно создать группы полей А и Б.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Таким образом появляется новая форма, но она неактивна, находится выше нашей спрятаной истинной формы, а не оборачивает её

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

Inferno

  • Новичок
  • 6
  • 0 / 0
Под формой, вы, наверное, группу полей подразумеваете? Форма - это то, что у вас на странице выводится, со всеми полями и кнопкой отправки. При помощи QuickForm вы ее можете сконструировать. А вызвать на страницу можно только проект, группа полей - это не форма, это какой-то набор полей, который можно использовать в процессе конструирования. Он не делимый кирпичик, соответственно, вам нужно создать группы полей А и Б.
Под формой подразумевал- проект, просто есть проект к примеру игрушки и чтобы не делать под каждый вид игрушек отдельный проект, думал можно создать в проекте группы полей под каждую и выводить в заявке проект с нужными полями
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Под формой подразумевал- проект, просто есть проект к примеру игрушки и чтобы не делать под каждый вид игрушек отдельный проект, думал можно создать в проекте группы полей под каждую и выводить в заявке проект с нужными полями
А чем это лучше, чем сейчас? Проекты для того и сделаны, чтобы категоризовать древовидную структуру формы, плюс возможность задать другие настройки при выводе на страницу.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

x1

  • Давно я тут
  • 637
  • 15 / 0
  • Linux — это Windows для бытовой техники
 QuickForm - история отправлений. Было бы неплохо расширить фильтр, выбор статистики по конкретному проекту.
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
QuickForm - история отправлений. Было бы неплохо расширить фильтр, выбор статистики по конкретному проекту.
Там вверху фильтр есть. Введите название проекта или часть, наверное, тоже найдет.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

x1

  • Давно я тут
  • 637
  • 15 / 0
  • Linux — это Windows для бытовой техники
Там вверху фильтр есть. Введите название проекта или часть, наверное, тоже найдет.
Статистика по одной форме - это не выход, а если их 200 штук, этих форм? Вот если бы отображался список проектов с общей цифрой отправленных против каждого... Но это все так скзать пожелание. Спасибо за компонент!
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Статистика по одной форме - это не выход, а если их 200 штук, этих форм? Вот если бы отображался список проектов с общей цифрой отправленных против каждого... Но это все так скзать пожелание. Спасибо за компонент!
Статистика, возможно, будет проработана. Т. к. компонент обзавелся корзиной и может работать в режиме магазина, ее можно будет переделать.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

Inferno

  • Новичок
  • 6
  • 0 / 0
https://yadi.sk/i/gORIRpyt3QhsVy
Возможно ли сделать вывод в таком формате?
Красным отмечены значения которые меняются динамически
*

Stanislav112

  • Новичок
  • 7
  • 0 / 0
При экспорте данных через phpMyAdmin в эксель информация с разных полей (вопросов) сохраняется в одну ячейку. Я понимаю, что принцип базы данных таков, что все ответы сохраняют в одно поле через запятую. Можно ли как-то реализовать это таким образом, чтобы под каждый вопрос был свой столбик? Или такой функционал не поддерживается? Спасибо.
*

Messir

  • Давно я тут
  • 532
  • 73 / 0
  • могу укусить:)
При экспорте данных через phpMyAdmin в эксель информация с разных полей (вопросов) сохраняется в одну ячейку. Я понимаю, что принцип базы данных таков, что все ответы сохраняют в одно поле через запятую. Можно ли как-то реализовать это таким образом, чтобы под каждый вопрос был свой столбик? Или такой функционал не поддерживается? Спасибо.
Это эксель так коряво отображает разделители. Сохраняйте в формате csv с разделителем - запятая и открывайте опенофисом, потом, если надо, сохраняйте в ексель и будет Вам счастье))
*

Inferno

  • Новичок
  • 6
  • 0 / 0
Добрый день, подскажите как изменить надпись на кнопке отправить? и как это сделать для конкретной формы только
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Добрый день, подскажите как изменить надпись на кнопке отправить? и как это сделать для конкретной формы только
В настройках кнопки значение value. Напишите там, что нужно.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

Inferno

  • Новичок
  • 6
  • 0 / 0
В настройках кнопки значение value. Напишите там, что нужно.
Спасибо!
*

alex1

  • Новичок
  • 9
  • 0 / 0
уважаемый автор не как не вкурю какую переменную в настройки калькулятора нужно добавить чтобы сумма проекта 1 отображалась в проекте 2. или это не возможно.


новый трабл поясните
 SUM0=5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8;(выбор значения)
 SUM1=5,9*5,11 ( где 5,9 это  SUM0  а 5,11 форма select c выбором значения) НЕ РАБОТАЕТ
но эта сволочь работает только при выражении
SUM1=5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8|5.11  успешно сумирует
 а как заставить умножать не понял
« Последнее редактирование: 21.01.2018, 13:30:23 от alex1 »
*

varX

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


новый трабл поясните
 SUM0=5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8;(выбор значения)
 SUM1=5,9*5,11 ( где 5,9 это  SUM0  а 5,11 форма select c выбором значения) НЕ РАБОТАЕТ
но эта сволочь работает только при выражении
SUM1=5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8|5.11  успешно сумирует
 а как заставить умножать не понял
Нужно видеть на вашем сайте, то что вы пытаетесь реализовать. Скорее всего, вы залезли в дебри, которые вам сто лет не нужны. И все делается проще, чем вы пытаетесь.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

alex1

  • Новичок
  • 9
  • 0 / 0
http://demo.mirtkanii.ru/  а пытаюсь реализовать как http://transmedia.1mt.ru/    первый калькулятор
*

Evgen0

  • Новичок
  • 1
  • 0 / 0
А зачем их на сервере хранить?
Здравствуйте, не понял как работать с формами, заполнять поля class,cloner, textarea, custom и т.д., есть подробная инструкция? Это только формы ввода, или можно кнопкой событием записать текст в материал или сохранить в базе данных и извлечь?
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
http://demo.mirtkanii.ru/  а пытаюсь реализовать как http://transmedia.1mt.ru/    первый калькулятор
Если вам нужно несколько результатов калькуляции, тогда действительно можно воспользоваться функционалом формул в настройках проекта. Хотя я делаю по другому.

В вашем случае формула SUM1=5,9*5,11, это неправильная запись - там же указано, в каком формате пишется формула. Каждый вывод результата записывается так же, как вы пишете вначале, то есть

SUM0=5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8;
SUM1=5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8|5.11;

Если нужен третий результат калькуляции, который представляет из себя сумму двух предыдущих, то он так же должен рассчитываться, то есть, что-то вроде

SUM2=5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8|5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8|5.11

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

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Здравствуйте, не понял как работать с формами, заполнять поля class,cloner, textarea, custom и т.д., есть подробная инструкция? Это только формы ввода, или можно кнопкой событием записать текст в материал или сохранить в базе данных и извлечь?
Чтобы понять, как работать с формой, вам нужно не думать о том, что там может быть что-то сложное, а понять, что все до безумного элементарно и просто. Тогда все встанет на свои места.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

alex1

  • Новичок
  • 9
  • 0 / 0
Если вам нужно несколько результатов калькуляции, тогда действительно можно воспользоваться функционалом формул в настройках проекта. Хотя я делаю по другому.

В вашем случае формула SUM1=5,9*5,11, это неправильная запись - там же указано, в каком формате пишется формула. Каждый вывод результата записывается так же, как вы пишете вначале, то есть

SUM0=5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8;
SUM1=5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8|5.11;

Если нужен третий результат калькуляции, который представляет из себя сумму двух предыдущих, то он так же должен рассчитываться, то есть, что-то вроде

SUM2=5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8|5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8|5.11

Все результаты вставляются в порядке следования qfprice по очереди, если они есть в видимой части формы. Если qfprice не хватает, тогда лишние SUM2, SUM3 ... игнорируются.
спасибо за ответ но меня интересует как реализовать (sum1=sum0*5.11 где будут переменные)
SUM1=5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8|5.11 тут он удачно складывает, а нужно чтобы умножал
вопрос как заставить умножать.
и да есле в 5,11 выстовлять значения *5   *10  *15 итд то выходит ошибка
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
спасибо за ответ но меня интересует как реализовать (sum1=sum0*5.11 где будут переменные)
SUM1=5.1|5.10|5.3|5.4|5.2|5.5|5.6|5.8|5.11 тут он удачно складывает, а нужно чтобы умножал
вопрос как заставить умножать.
и да есле в 5,11 выстовлять значения *5   *10  *15 итд то выходит ошибка

Я же вам написал, прочитайте внимательно.

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

QuickForm 3 - конструктор простых и сложных форм

Автор varX

Ответов: 1107
Просмотров: 106090
Последний ответ 21.10.2025, 03:19:37
от varX
Конструктор форм joomly.ru. Ошибка 404

Автор kunsaid

Ответов: 2
Просмотров: 3724
Последний ответ 11.01.2022, 10:00:21
от kunsaid
QuickForm - форма с функциями калькулятора и зависимыми полями

Автор varX

Ответов: 1332
Просмотров: 219039
Последний ответ 29.09.2021, 16:40:57
от varX
Модуль конструктор формы обратной связи simpleForm2 для Joomla 1.0 / joostina 1.2

Автор vs12345

Ответов: 21
Просмотров: 24613
Последний ответ 25.09.2020, 16:21:22
от svarg
QuickForm 3 не считает калькулятор

Автор Wargoth

Ответов: 17
Просмотров: 5766
Последний ответ 02.04.2020, 22:52:39
от Igor12