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

goga_pgasovav

  • Захожу иногда
  • 445
  • 6 / 0
  • Внимательный джумловод
Есть необходимость все теги материала получить в виде строки через побел (чтобы использовать как классы).
Знаю, что вывести все теги можно следующим образом:
Код
<?php if ($params->get('show_tags') && !empty($this->item->tags->itemTags)) : ?>
<?php echo JLayoutHelper::render('joomla.content.tags', $this->item->tags->itemTags); ?>
<?php endif; ?>

Можно было бы отредактировать шаблон вывода, и вместо тегов с сылками вывести просто alias или title всех тегов, но мне такой вариант не подходит, т.к. такой вывод тегов в каждом материале тоже нужен, и используется.

Пытаюсь получить нужные значения из массива таким образом:
Код
$tags = array();
foreach($this->item->tags as $tag) {
$tags[$tag->name] = $tag>rawvalue;
echo $tag['title'];
}
К сожалению это не работает.
Полагаю из-за этой строки '$tags[$tag->name] = $tag>rawvalue;' — я попытался написать код по аналогии с выводом данных из custom fields, и не понимаю, как сюда запихнуть нужные значения из массива.
Прошу помощи  !
« Последнее редактирование: 02.03.2023, 14:21:05 от goga_pgasovav »
*

goga_pgasovav

  • Захожу иногда
  • 445
  • 6 / 0
  • Внимательный джумловод
Долго размышлял, как же это реализовать хитрее, и в голову пришло следующее решение: просто создать второй шаблон вывода!

Создаём папку по пути '/your_template/html/layouts/joomla/content/'
В эту папку копируем дефолтный шаблон вывода тэгов. Он находится тут: 'корень_сайта/layouts/joomla/content/tasg.php'
Называем его, скажем, tags_list.php и вносим в этот шаблон свои правки. Я просто удалил весь HTML код ненужный, оставив вывод тэгов просто текстом.

Теперь в '/your_template/html/com_content/category/blog_item.php' в нужном месте пишем:
Код
<?php echo JLayoutHelper::render('joomla.content.tags_list', $this->item->tags->itemTags); ?>

Всё работает!  *DRINK*
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Вывод значений из custom fields материала в модуле по имени поля

Автор goga_pgasovav

Ответов: 3
Просмотров: 2510
Последний ответ 30.12.2024, 13:22:11
от goga_pgasovav
Переход на страницу материала после его размещения пользователем

Автор stepan39

Ответов: 0
Просмотров: 1537
Последний ответ 22.11.2024, 07:14:15
от stepan39
Перенести описание категории вниз страницы

Автор jimka

Ответов: 1
Просмотров: 1712
Последний ответ 18.07.2024, 08:02:46
от Vastriet
[Решено] Получить category description image в index.php шаблона

Автор goga_pgasovav

Ответов: 6
Просмотров: 2197
Последний ответ 12.07.2024, 17:06:14
от goga_pgasovav
Сортировка по доп. полям на странице списка категории

Автор revil

Ответов: 4
Просмотров: 2045
Последний ответ 02.06.2024, 13:42:45
от tigra-uki