Новости Joomla

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

bannndi

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
не подскажете, как именно можно с помощью PHP можно получить кол-во пунктов меню через свойство $app->getMenu(); ?

я пробовал сделать так:
Код
$array1 = (array)$app->getMenu();
Код
array(4) {
  ["*_items"]=>
  array(7) {
    [101]=>
    object(stdClass)#30 (21) {
      ["id"]=>
      string(3) "101"
      ["menutype"]=>
      string(8) "mainmenu"
      ["title"]=>
      string(4) "Home"
      ["alias"]=>
      string(4) "home"
получаю массив в массиве, а дальше не понимаю что делать, через foreach ничего не получилось. У вложенных массивов какие-то странные имена ключей "*_items*_default*_active*_errors".

В общем, не получается получить массив с ключом "*_items", и соответственно, посчитать кол-во объектов во вложенном массиве (array(7))..

Похожую тему нашел, но там сказано только про метод getMenu(), а как получить кол-во пунктов меню, не понятно.. Надеюсь на помощь)


*

midav

  • Давно я тут
  • 926
  • 115 / 1
Код
$app = JFactory::getApplication();
$menu = $app->getMenu();
$items = $menu->getItems('menutype', 'mainmenu'); // вместо mainmenu ставим тип нужного меню, смотрим в админке
$count_items = count($items); // здесь будет количество опубликованных пунктов меню

А для чего Вам это надо ?
Ответы на вопросы по CSS . Откройте для себя Firebug
*

bannndi

  • Осваиваюсь на форуме
  • 14
  • 0 / 0

Спасибо!

Да я думал с помощью этого значения динамически вычислять ширину пункта горизонтального меню, чтобы оно было похожего вида http://jsfiddle.net/sh6h4/2/

хотя уже не уверен, что это то, что нужно.. начало темы здесь http://joomlaforum.ru/index.php/topic,255767.new.html#new
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Назначение макета, посредством ссылки в меню

Автор xxxLOGIATxxx

Ответов: 20
Просмотров: 7584
Последний ответ 04.02.2022, 14:44:14
от hoi
Съезжает меню при наведении

Автор yyyuuu

Ответов: 4
Просмотров: 4455
Последний ответ 08.12.2020, 11:12:32
от AlexB
Проблемы в горизонтальном меню Joomla 2.5

Автор Димьяна

Ответов: 1
Просмотров: 5129
Последний ответ 27.11.2018, 14:58:30
от Ragivort
mod_menu и подписи к пунктам меню (subtitles)

Автор St@lker

Ответов: 21
Просмотров: 9355
Последний ответ 29.10.2017, 16:24:00
от xilog
Перенос строки в название пункта меню Joomla

Автор skitskis

Ответов: 33
Просмотров: 19080
Последний ответ 29.10.2017, 10:36:30
от xilog