Новости Joomla

Вышли релизы Joomla 6.0.3 и Joomla 5.4.3

Релиз Joomla 6.0.3 и Joomla 5.4.3

Проект Joomla рад сообщить о выпуске Joomla 6.0.3 и Joomla 5.4.3. Это релиз исправлений ошибок и улучшений для серии Joomla 6.0 и Joomla 5.4.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями 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 Гость просматривают эту тему.
  • 21 Ответов
  • 7194 Просмотров
*

kolka-jan

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
Ситуация следующая. Необходимо добавить поле «Возраст» в форму регистрации. Использую альтернативный модуль авторизации BT-login, но, в принципе, вопрос касается любого модуля авторизации, хоть и встроенного, родного.
Делаю следующие шаги:
1.   После поля USERNAME добавляю поле AGE в свою базу данных в таблицу ХХХ_users, поле текстовое, тип VARCHAR, длина 2.

2.    Добавляю в САЙТ/modules/название_модуля_авторизации/tmpl/default.php новое поле – «Возраст»:

<div class="btl-field">
<div class="btl-label"><?php echo JText::_( 'AGE' ); ?></div>
<div class="btl-input">
<input id="btl-input-age" type="age" name="jform[age]" />
</div>
</div>         
<div class="clear"></div>   
Теперь у меня в форме регистрации появляется это поле для заполнения.

3.   Добавляю в профиль пользователя поле «Возраст» в файл САЙТ/components/com_users/models/forms/registration.xml
      
<field name="age" type="text"
         description="Введите свой возраст"
         filter="string"
         label="Возраст"
         required="true"
         size="30"
      />
Появляется это поле для самого пользователя

4.   Аналогично добавляю в профиль пользователя в админке поле «Возраст» в файл САЙТ/administrator/components/com_users/models/forms/user.xml

      <field name="age" type="text"
         description="Введите Ваш возраст"
         label="Возраст"
         required="true"
         size="30"
      />
Появляется поле возраста в админке при просмотре профиля пользователей

5.   В в САЙТ/libraries/joomla/user/user.php после поля username добавляю поле age:

/**
                * The users age
                * @var    string
                * @since  11.1
                */
               public $age = null;


Все поля прописаны, все есть. НО!
Значение возраста, вводимое при регистрации в форму регистрации – не вносится ни в базу данных (поле AGE), ни видно в админке или профиле пользователя!
Как сделать так, чтобы заполнение в форме регистрации синхронизировалось с БД и полями Возраста в профиле пользователя?
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Для таких вещей используют профиль, а не таблицу users. На форуме вели обсуждение по добавлению полей в форму регистрации. Не понимаю, при чем тут модули - они не отвечают за регистрацию.
*

kolka-jan

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
Для таких вещей используют профиль, а не таблицу users.
Но данные о пользователях находятся как раз в таблице users. Я что-то не так понимаю?
На форуме вели обсуждение по добавлению полей в форму регистрации. Не понимаю, при чем тут модули - они не отвечают за регистрацию.
Честно искал - не нашел. Буду признателен за подсказку. Joomla 3.3.6
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
*

kolka-jan

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
http://joomlablog.ru/prijomy-poleznye-tryuki/30-rasshirennye-profili-polzovatelej-v-joomla-17
http://library.logicsistemi.it/en/joomla/general-topics/40-joomla-25-extending-users-data-with-custom-fields
Спасибо за ссылки - решение рабочее, хорошо. Однако оно работает с родным модулем авторизации. Не могу разобраться - как заставить его работать с альтернативным модулем авторизации.
*

perezxxx

  • Осваиваюсь на форуме
  • 11
  • 0 / 1
Получилось победить проблему?
У меня такая же
*

Mila

  • Осваиваюсь на форуме
  • 30
  • 0 / 0
Добрый день. Помогите разобраться, пожалуйста. Только не плюйте в меня, что полезла в движок (при изначальном поиске решения проблемы полезла на форумы и нашла такое решение. Почти работает. Но только "почти"  ;)

Суть вопроса: нужно добавить дополнительное поле с целью регистрации на сайте в форму регистрации. Поле только одно, так что подключать целый плагин профилей не хотелось.

Что сделала:
1. добавила строку "purpose" в базу данных, таблица _users. (varchar(100), utf8).
2. Внесла изменения в файл user.php из папки libraries/joomla/user: добавила код public $purpose= null;
3. Внесла изменения в файл users.xml из папки administrator/components/com_users/models/forms. Добавила код
 
Код
   <field name="purpose" type="text"
        description="Определите цель регистрации: регистрация на вэбинар, запись на консультацию"
        label="Цель регистрации"
        required="true"
        size="60"
/>
4. Добавила тот же код в registration.xml из папки components/com_users/models/forms

И все бы хорошо, да только вместо нормальной формы выбегают крокозяблы. И внизу маленькая приписочка: 500 JForm::getInstance could not load file  ^-^

Поможете?
*

Mila

  • Осваиваюсь на форуме
  • 30
  • 0 / 0
Заменила русские буквы на константы, прописала константы в языковом файле. Форма появилась, но вместо букв знаки вопроса. И одного поля не хватает. Т.е. надписей 9, а полей для ввода 8. Может кто сталкивался, подскажите.
« Последнее редактирование: 29.12.2016, 17:00:55 от Mila »
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Будем ругать - зачем в ядро, если можно написать плагин профиля?
*

Mila

  • Осваиваюсь на форуме
  • 30
  • 0 / 0
Предлагаете вернуть все как было и включить таки плагин профиля? Жаль, а так хотелось домучать начатое)) А главное, что все выглядит очень логично и не понятно почему не работает(( :( Кстати, дополнительное поле добавилось, а вот с кодировкой так вопрос и не решила. Откатываю обратно(
« Последнее редактирование: 29.12.2016, 18:12:54 от Mila »
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Предлагаете вернуть все как было и включить таки плагин профиля? Жаль, а так хотелось домучать начатое)) А главное, что все выглядит очень логично и не понятно почему не работает(( :( Кстати, дополнительное поле добавилось, а вот с кодировкой так вопрос и не решила. Откатываю обратно(
Лучше плагин. А выйдет 3.7, появятся кастомные поля и вообще всё проще будет.
*

rijiiap

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Лучше плагин. А выйдет 3.7, появятся кастомные поля и вообще всё проще будет.
Что значит кастомные поля в регистрации? Уже вышла версия 3.8.1 и ничего сделать с регистрацией нельзя.
Может я неправильно понимаю, но мне необходимо в регистрацию добавить после с выбором из выпадающего списка, например поле Пол: и в нем выпадающий выбор (-выберите пол-; мужской; женский; не определен)
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Может я неправильно понимаю, но мне необходимо в регистрацию добавить после с выбором из выпадающего списка, например поле Пол: и в нем выпадающий выбор (-выберите пол-; мужской; женский; не определен)

Создай пользовательский плагин с функцией onContentPrepareForm и подключай свой файл формы в котором и будет твои поля... Если для тебя это очень сложно, могу дать рабочий плагин...
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

rijiiap

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Создай пользовательский плагин с функцией onContentPrepareForm и подключай свой файл формы в котором и будет твои поля... Если для тебя это очень сложно, могу дать рабочий плагин...

Спасибо. Нашел рабочий плагин Zygo Profile.
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Спасибо. Нашел рабочий плагин Zygo Profile.
Zygo хороший плагин, сам использую.
Но для новых проектов - давно уже появились поля, логичнее использовать стандартные инструменты.
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Что значит кастомные поля в регистрации? Уже вышла версия 3.8.1 и ничего сделать с регистрацией нельзя.
Доп поля как-бы выводятся в регистрации. просто права поставите на поле чтобы guest мог его изменить
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

rijiiap

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Zygo хороший плагин, сам использую.
Но для новых проектов - давно уже появились поля, логичнее использовать стандартные инструменты.
Может поможете?
Создал поле в регистрации с помощью Zygo, но это поле отображается только в стандартном кабинете пользователя, а можно ли его как отобразить в кабинете AlphaUsrPoints?
Заранее спасибо.
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Может поможете?
Создал поле в регистрации с помощью Zygo, но это поле отображается только в стандартном кабинете пользователя, а можно ли его как отобразить в кабинете AlphaUsrPoints?
Заранее спасибо.
Я AUP не использую
*

nden

  • Осваиваюсь на форуме
  • 37
  • 5 / 0
Для добавления поля в форму регистрации надо зайти в Менеджер пользователей--> Поля-->Создать
*

SLdieR11

  • Осваиваюсь на форуме
  • 15
  • 1 / 0
  • Hello World!!!
Для добавления поля в форму регистрации надо зайти в Менеджер пользователей--> Поля-->Создать

Именно так и создавал. Поля появились, но вот только они заблокированы. Как снять disable с полей? Если я правильно понял, у меня форма регистрации K2.
*

SLdieR11

  • Осваиваюсь на форуме
  • 15
  • 1 / 0
  • Hello World!!!
Именно так и создавал. Поля появились, но вот только они заблокированы. Как снять disable с полей? Если я правильно понял, у меня форма регистрации K2.
В общем всё же разобрался, надо группе полей (либо для каждого свойства, если делаете без группы) выставлять права для Public -> Изменить значение -> Разрешено
*

Verhov526

  • Осваиваюсь на форуме
  • 21
  • 0 / 1
В общем всё же разобрался, надо группе полей (либо для каждого свойства, если делаете без группы) выставлять права для Public -> Изменить значение -> Разрешено
Была такая же проблема, спасибо за описание решения
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Добавление поля в форму регистрации

Автор Robert24

Ответов: 3
Просмотров: 1189
Последний ответ 10.10.2022, 23:35:04
от Robert24
Получить категории кастомных полей

Автор Zelyonkin

Ответов: 5
Просмотров: 1016
Последний ответ 03.08.2022, 12:11:17
от sivers
Нет категорий поиска в регистрации J-BusinessDirectory

Автор tochka

Ответов: 0
Просмотров: 785
Последний ответ 28.07.2022, 09:00:11
от tochka
Прием заявок через форму обратной связи

Автор timssky

Ответов: 6
Просмотров: 1224
Последний ответ 02.06.2022, 17:33:52
от marksetter
Передать значения полей категории блога материалу

Автор Zelyonkin

Ответов: 4
Просмотров: 847
Последний ответ 24.02.2022, 18:05:47
от Zelyonkin