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

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Цитировать
ваша задача - максимально усложнить для злоумышленника кражу сессии

Добавил бы ещё один пункт сюда: исключение самой возможности наличия шелла в каталоге сайта. Это можно сделать весьма гибко, чтобы у пользователя остался доступ для редактирования этих файлов. Нужно запретить PHP писать в каталоги. Для кэша и динамических файлов можно проработать исключения.

Единственный вопрос -- необходимость. Если мы говорим о любительском сайте или небольшом интернет-магазине, то нафиг оно всё нужно -- не легче будет вывести транзакции в сторонний сервис? Однако в случае мало-мальски поставленного бизнеса, может, и рационально будет включить в бюджет статью расходов, связанную с безопасностью. Ведь все эти манипуляции с шифрами, изменения в файловой системе требуют периодического мониторинга и участия соответствующего специалиста.
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Цитировать
Выполняется шифрование данных, данные помещаются в БД. Где то должен лежать ключ либо список ID=KEY, что бы его можно было быстро достать и декодировать данные, если, к примеру, клиент смотрит историю платежей. Тогда возникает та самая дилема, и даже две - где хранить ключи и как обезопасить скрипт, выдающий ключи, и как, в конце концов, не дать подделать выдачу ключа? Я ведь не буду требовать от каждого пользователя вставлять свой e-Token в технологическое отверстие...
ответ содержится в вопросе: именно у клиента должен быть ключ, который не обязательно должен быть на токене, можно установить в систему личный сертификат, единоразово, и проверять его наличие и актуальности, а выдавать в ЛК при регистрации ибо по запросу обновления
*

SeBun

  • BanMaster
  • 4030
  • 259 / 5
  • @SeBun48
Добавил бы ещё один пункт сюда: исключение самой возможности наличия шелла в каталоге сайта. Это можно сделать весьма гибко, чтобы у пользователя остался доступ для редактирования этих файлов. Нужно запретить PHP писать в каталоги. Для кэша и динамических файлов можно проработать исключения.

Такая система у меня уже есть, довожу до ума и тестирую. Как раз в прошлом году по ней создавал такую же тему, как эта, обсуждали возможность реализации. Там и WAF, и контроль запускаемых файлов, контроль появления новых файлов, контроль IP и многое другое, моя разработка. Подключается через auto_prepend в php.ini и работает незаметно. В данный  момент на моем сервере все проверки проходят за 0.003 сек, что для пользователя совершенно незаметно. И даже при наличии шелла эту систему невозможно отключить или изменить (если только не ломать сервер). То есть, теоретически, ели это мой личный бизнес, можно обойтись и без дополнительной статьи расходов, просто получая уведомления о сработках на свой мобильный, вставая в три часа ночи и выясняя, какая сволочь посмела меня разбудить... Не, видимо, вы правы, статью расходов придется предусмотреть...
Оказываю услуги по Joomla | Миграция/Обновление | Сопровождение | IT-аутсорсинг | Недорогие домены и хостинг
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Я тоже делал подобное одному юзеру, который является фанатом J! 1.5 и не хочет изменить жизнь к лучшему :)

Суть в том, что PHP пользователь не является локальным пользователем -- это разные пользователи (но группы совпадают). Таким образом, юзер может по FTP отредактировать/удалить любой файл, а PHP может писать только там, где ему разрешили. То есть с помощью ACL для каталога кэша, например, создаётся маска 775 и соответствующие права.
*

SeBun

  • BanMaster
  • 4030
  • 259 / 5
  • @SeBun48
Вот еще одна новость. Как думаете, приживется? Стоит ли вообще думать о внедрении поддержки физических ключей в Joomla?
Оказываю услуги по Joomla | Миграция/Обновление | Сопровождение | IT-аутсорсинг | Недорогие домены и хостинг
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
пока что это самый безопасный способ защиты данных, для банков самое то
*

capricorn

  • Завсегдатай
  • 1949
  • 118 / 3
Цитировать
Вот еще одна новость. Как думаете, приживется? Стоит ли вообще думать о внедрении поддержки физических ключей в Joomla?
Sebun, вы тему начали с того, что собирались шифровать данные до отправки на сервер.

USB ключи давно изобретены. Но они не шифруют данные.
*

SeBun

  • BanMaster
  • 4030
  • 259 / 5
  • @SeBun48
Sebun, вы тему начали с того, что собирались шифровать данные до отправки на сервер.
USB ключи давно изобретены. Но они не шифруют данные.
Я прекрасно знаю, что такое USB-ключи и для чего они предназначены. Тема о безопасном хранении данных и возможных вариантах реализации.
Оказываю услуги по Joomla | Миграция/Обновление | Сопровождение | IT-аутсорсинг | Недорогие домены и хостинг
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться