Новости 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 Ответов
  • 3868 Просмотров
*

agro355

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Обрезаются "кавычки"
« : 11.04.2011, 12:29:41 »
Здравствуйте!
В компоненте фотогалереи JoomGallery при открытии (редактировании) категории или изображения в поле Название (Title) удаляються все символы начиная с обычных "кавычек" (т.е. "). А при сохранении не удаляються. Например, создаю я категорию и называю ее ТОРТ "СПАРТАК", сохраняю, все гуд - сохраняется. Теперь когда открыть данную категорию для редактирования название будет ТОРТ. Если дописать "СПАРТАК" и сохранить, то сохраниться, а если нажать Применить (Apply), то сразу исчезает.
Очень нужны именно "такие кавычки" а не какие то другие.

Помогите исправить данный баг (я считаю, что это именно баг потому, что в других компонентах да и в самой Joomla такие кавычки в названиях разрешены и не удаляються). Или, хотя бы, подскажите где искать код, который режет их.
*

agro355

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Обрезаются "кавычки"
« Ответ #2 : 11.04.2011, 12:40:59 »
одиночные должны работать ).
''СПАРТАК'' попробуй
Спасибо, за совет, но заказчик требует "нормальных", т.е. двойных и настаивает, чтобы я сделал "как надо"...
*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
Re: Обрезаются "кавычки"
« Ответ #3 : 11.04.2011, 12:48:17 »
Просто экранировать их нужно.
Код
$quot = str_replace('"', '&quot', $quot);
Точнее заменить при вводе на &quot. Прямо в визуальном редакторе У Вас защита так срабатывает.
« Последнее редактирование: 11.04.2011, 12:51:52 от al-teen »
*

agro355

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Обрезаются "кавычки"
« Ответ #4 : 11.04.2011, 12:50:58 »
Просто экранировать их нужно.
Код
$quot = str_replace('"', '&quot', $quot);
Точнее заменить при выводе на &quot. У Вас защита так срабатывает
А где именно??
*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
Re: Обрезаются "кавычки"
« Ответ #5 : 11.04.2011, 12:54:25 »
А где именно??
Либо в Визуальном редакторе при помощи JS, либо в компоненте, который Вы используете. Точнее сказать не могу - я не Ванга, пардон
*

agro355

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Обрезаются "кавычки"
« Ответ #6 : 11.04.2011, 13:04:04 »
К сожалению, визуальный редактур тут ни причем потому, что это поле - Название (Title). Может тогда подскажете где этот код в с татьях или категория Joomla, а я уже по аналогии попытаюсь найти в компоненте JoomGallery?
*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
Re: Обрезаются "кавычки"
« Ответ #7 : 11.04.2011, 15:00:12 »
Как раз таки визуальный редактор еще как при чем. Вполне реально заменить на уровне ввода символ кавычек на его безопасный хтмл аналог. Но для этого нужно хотя бы на начальном уровне знать JS. И если я даже Вам напишу сам код для подмены, Вам опять же нужны знания JS чтоб его вставить. Попробуйте ту строчку, что я привел выше сперва вставить в index.php шаблона где нить сверху, чем черт не шутит, может сработает. Хотя это что называется пальцем в небо ткнуть.

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

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Обрезаются "кавычки"
« Ответ #8 : 11.04.2011, 15:21:15 »
хватит флудить )
\administrator\components\com_joomgallery\views\image\tmpl\form.php
в районе 60-ой строки приводим к следующему виду

Код
<input class="inputbox" type="text" name="imgtitle" id="title" size="40" maxlength="255" value="<?php echo $this->escape($this->item->imgtitle); ?>" />
*

agro355

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Обрезаются "кавычки"
« Ответ #9 : 11.04.2011, 16:57:52 »
Огромнейшее Вам спасибо, Effrit! Получилось! Я  и сам было нашел данную строчку кода, но вот что с ней делать не знал.

И вам, al-teen, спасибо за то что не остались равнодушным.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Обрезаются "кавычки"
« Ответ #10 : 11.04.2011, 17:16:33 »
так надо было посомтреть аналог category, у которой название с кавычками нормально отрабатывает )
я так выловил баг
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться