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

Gorilla

  • Захожу иногда
  • 73
  • 0 / 0
Код для автозаполнения
« : 28.03.2017, 10:05:13 »
Добрый день!

Столкнулся с тем что не могу не нашел, а своих знаний не хватает чтобы написать код для автозаполнения.
Ситуация:
1. Создана форма с названием registration
2. Создано поле unique с автоматическим созданием уникального кода (использовал md5 с ограничением в 6 символов, так как стандартное создание уникального кода имеет более 8 символов, а мне лично столько не надо), а также другие необходимые поля
3. Использование кода
Код
//<code>
$user=JFactory::getUser();
return $user->get('name');
//</code>
работает для полей из формы стандартной регистрации, но никак не для новых созданных полей, которые непонятно где хранятся в базе данных

4. Есть еще такой код
Код
//<code>
$items = "|Please Select[c]\n";
$db =& JFactory::getDBO();
$db->setQuery("SELECT your_value, your_label FROM your_table");
$result = $db->loadObjectList();

foreach ($result as $r)
$items .= $r->your_value . '|' . $r->your_label . "\n";

return $items;
//</code>

но что в нем где мне лично непонятно и можно ли его использовать в моем случае и в каких таблицах хранятся эти данные.

5. Необходимо в новую форму в текстовое поле автоматом добавлялись данные взятые из поля unique формы registration

Буду рад если кто-нибудь сможет помочь
« Последнее редактирование: 28.03.2017, 10:11:26 от Gorilla »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Код для автозаполнения
« Ответ #1 : 28.03.2017, 10:56:13 »
5. Необходимо в новую форму в текстовое поле автоматом добавлялись данные взятые из поля unique формы registration
"Новая форма" - это другая, не registration? А где в это же время находится сама registration и заполнено ли поле unique?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: Код для автозаполнения
« Ответ #2 : 28.03.2017, 10:57:17 »
Вопрос увы без ответа ибо ничего не понятно. В вопросе нет контекста а без него что либо ответить невозможно.
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Gorilla

  • Захожу иногда
  • 73
  • 0 / 0
Re: Код для автозаполнения
« Ответ #3 : 28.03.2017, 11:20:11 »
"Новая форма" - это другая, не registration? А где в это же время находится сама registration и заполнено ли поле unique?

описал ниже в сообщении. Хотел это сообщение удалить, но не нашел как
« Последнее редактирование: 28.03.2017, 11:32:45 от Gorilla »
*

Gorilla

  • Захожу иногда
  • 73
  • 0 / 0
Re: Код для автозаполнения
« Ответ #4 : 28.03.2017, 11:22:47 »
"Новая форма" - это другая, не registration? А где в это же время находится сама registration и заполнено ли поле unique?

Вопрос увы без ответа ибо ничего не понятно. В вопросе нет контекста а без него что либо ответить невозможно.

эххх, а старался более понятно описать, поэтому прошу прощения

Есть две формы. В одной, назовем ее registration, создано поле unique в котором автоматически генерируется уникальный код (то есть оно уже заполнено). Во второй форме, назовем ее form2 создается текстовое (или иное подходящее) ВИДИМОЕ поле в которое нужно автоматически добавлять данные (=сгенерированный уникальный код) из поля unique формы registration
« Последнее редактирование: 28.03.2017, 11:34:13 от Gorilla »
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: Код для автозаполнения
« Ответ #5 : 28.03.2017, 11:59:22 »
Опять таки без контекста. Чтобы дать совет нужно понять зачем вам это нужно, ибо мб вы вообще пошли по неверному пути.
Если отвечать по факту то поле unique надо сохранять в в отдельную таблицу или доп столбец, уже после процесса регистрации где будет id пользователя и unique, затем уже запросом его получать в новую форму. Либо хранить этот ключ в той же сессии.
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Код для автозаполнения
« Ответ #6 : 28.03.2017, 12:49:18 »
В дополнение к ответу от Septdir: если обе формы одновременно открыты, то можно еще JavaScript'ом вставить во вторую форму значение поля unique.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: Код для автозаполнения
« Ответ #7 : 28.03.2017, 17:00:56 »
В дополнение к ответу от Septdir: если обе формы одновременно открыты, то можно еще JavaScript'ом вставить во вторую форму значение поля unique.
Одновременно открыты и на одной странице все же разные вещь. А вообще мысля тоже гуд и наиболее простая.
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться