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

Boroda4

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Коллеги, срочно нужна ваша помощь...
Изменил поле "Email" на "Телефон", а видимо требование к строке вводить электронный адрес с @ осталось... Нужно его убрать, иначе заявка не отправляется((( ! http://lumaio.ru/dubai-4047700/ask.html
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Конечно есть, там java script? который проверяет валидность адреса и отправляет письмо.
Я же вам дал наводку: http://joomlaforum.ru/index.php/topic,242804.msg1251352.html#msg1251352.
Добавьте поле "Телефон".
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Boroda4

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Конечно есть, там java script? который проверяет валидность адреса и отправляет письмо.
Я же вам дал наводку: http://joomlaforum.ru/index.php/topic,242804.msg1251352.html#msg1251352.
Добавьте поле "Телефон".
Все, спасибо большое! Вроде как получилось!
*

Diazz

  • Захожу иногда
  • 53
  • 1 / 0
Вы разобрались как убрать поле емейл вообще? я добавил поле телефон - а если убераю почту то вообще не отправляется письмо. Мне бы убрать поле текста и емейла.
http://usbclub.ru/katalog.html?page=shop.product_details&flypage=flypage.tpl&product_id=7238&category_id=0
*

fsv

  • Moderator
  • 2787
  • 413 / 2
Вы разобрались как убрать поле емейл вообще? ...если убераю почту то вообще не отправляется письмо.

Редактируйте javascript валидации заполнения формы в   \components\com_virtuemart\themes\ВашаТема\templates\pages\shop.ask.tpl.php
Условия для проверки поля "email" - document.emailForm.email.value.search
Веб-разработка: заказ. Только новая разработка.
*

Diazz

  • Захожу иногда
  • 53
  • 1 / 0
Редактируйте javascript валидации заполнения формы в   \components\com_virtuemart\themes\ВашаТема\templates\pages\shop.ask.tpl.php
Условия для проверки поля "email" - document.emailForm.email.value.search
подскажите что там писать. если я все стираю то форма тупо не работает(
*

fsv

  • Moderator
  • 2787
  • 413 / 2
подскажите что там писать. если я все стираю то форма тупо не работает(
Зачем все стирать? Я же вам показал, что относится к полю email, которое вы удалили. Удаляя все, вы также удалили и submit формы.

Код
<script type="text/javascript"><!--
function validateEnquiryForm() {
if ( document.emailForm.name.value == ""  || document.emailForm.tel.value == "") {
alert( "<?php echo $VM_LANG->_('CONTACT_FORM_NC',false); ?>" );
} else {
document.emailForm.action = "<?php echo sefRelToAbs("index.php"); ?>"
document.emailForm.submit();
}
}
--></script>
Это если оставить имя и телефон в форме на вашем сайте, а остальное удалить. Это проверка только не на пустое значение полей. Для поля "телефон" хорошо бы маску прикрутить. Погуглите что-нибудь на тему jquery mask.
Веб-разработка: заказ. Только новая разработка.
*

Diazz

  • Захожу иногда
  • 53
  • 1 / 0
Спасибо, но при удалении и обновлении кода на ваш, при отправке запроса перекидывает в каталог и вверху пишет - извините, данный товар не найден...

Вот код который по умолчанию стоит. Всетаки актуальнее удалить только поле емейл. Поле с текстом оставить.
Может быть он не удаляет корректно его изза того что с его помощью еще письмо формируется?
Код
 <script type="text/javascript"><!--
function validateEnquiryForm() {
if ( ( document.emailForm.text.value == "" ) || ( document.emailForm.email.value.search("@") == -1 ) || ( document.emailForm.email.value.search("[.*]" ) == -1 ) ) {
alert( "<?php echo $VM_LANG->_('CONTACT_FORM_NC',false); ?>" );
} else if ( ( document.emailForm.email.value.search(";")!= -1 ) || ( document.emailForm.email.value.search(",")!= -1 ) || ( document.emailForm.email.value.search(" ")!= -1 ) ) {
alert( "You cannot enter more than one email address" );
} else {
document.emailForm.action = "<?php echo sefRelToAbs("index.php"); ?>"
document.emailForm.submit();
}
}
--></script>
*

fsv

  • Moderator
  • 2787
  • 413 / 2
при удалении и обновлении кода на ваш, при отправке запроса перекидывает в каталог и вверху пишет - извините, данный товар не найден...

Ну, да. Не вник в вашу переделку.
Задано ведь  document.emailForm.action = "<?php echo sefRelToAbs("index.php"); ?>", вот и перекидывает. Т.к. это для стандартного функционала, с отдельной страницей, с полученным запрашиваемым товаром.
Для вашей ситуации так не пойдет.
Веб-разработка: заказ. Только новая разработка.
*

Diazz

  • Захожу иногда
  • 53
  • 1 / 0
что же в моей ситуации пройдет?))
*

fsv

  • Moderator
  • 2787
  • 413 / 2
что же в моей ситуации пройдет?))
С ходу не скажу. Вопрос не в том, чтобы написать валидацию заполнения формы. Надо во flaypage применить функционал страницы shop.ask . Разбирался с ним более года назад, не помню уже, смотреть надо.
Веб-разработка: заказ. Только новая разработка.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как в интернет-магазине VirtueMart добавить несколько изображений к одному товару, прикрепить файл и

Автор Nemo31

Ответов: 4
Просмотров: 4717
Последний ответ 30.09.2013, 23:14:46
от Maikl
Изменение стиля отражения сопутствующих товаров

Автор GROT

Ответов: 2
Просмотров: 1392
Последний ответ 20.09.2013, 21:19:46
от fsv
Вопрос по оформлению товара в категориях

Автор smesharic

Ответов: 15
Просмотров: 2119
Последний ответ 15.05.2013, 13:15:51
от robert
Изменение сколлбара в browse_2

Автор katjuha6

Ответов: 4
Просмотров: 1945
Последний ответ 13.02.2013, 02:30:53
от katjuha6
Как заменить "Задайте вопрос по этому товару" картинкой?

Автор Boroda4

Ответов: 5
Просмотров: 1975
Последний ответ 21.12.2012, 12:52:33
от Boroda4