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

Dgikar

  • Захожу иногда
  • 192
  • 3 / 0
  • Я только учусь
Всем привет!

Делаю слайдер. Для этого, переопределил в templates/my_tepl/html/com_content/category/blog.php. В этом слайдере, хочу выводить только featured статьи с нескольких (а возможно и со всех (пока не определился точно)) категорий третьего уровня вложенности (т. е. первая категория в дочерней категории №..., вторая категория в дочерней категории №...)
  • Новости
    • Дочерняя категория №1
      • первая категория в дочерней категории №1
      • вторая категория в дочерней категории №1
    • Дочерняя категория №2
      • первая категория в дочерней категории №2
      • вторая категория в дочерней категории №2
    • Дочерняя категория №3
      • первая категория в дочерней категории №3
      • вторая категория в дочерней категории №3

Но как это сделать - не пойму...

Пробовал вот так:
Код
<?php if (!empty($this->intro_items)) : ?>
    <div class="my-items">
<?php foreach ($this->intro_items as $key => &$item) :
            if ($item->featured == 1): ?>
                <div class="my-item <?php echo $item->state == 0 ? ' system-unpublished' : null; ?>" itemprop="blogPost" itemscope itemtype="https://schema.org/BlogPosting">
                    <?php
                        $this->item = &$item;
                        echo $this->loadTemplate('item');
                    ?>
                </div>
<?php endif;
endforeach; ?>
    </div>
<?php endif; ?>
т. е. прописал проверку:
Код
if ($item->featured == 1):
Вроде выводятся избранные статьи, но только из одной категории (первая категория в дочерней категории №1, вторая категория в дочерней категории №1), а мне нужно из всех (первая категория в дочерней категории №2, вторая категория в дочерней категории №2, первая категория в дочерней категории №3, вторая категория в дочерней категории №3) или из нескольких конкретных (вторая категория в дочерней категории №2, вторая категория в дочерней категории №3)...

Вопрос:
    как быть? Какой нужно прописать код чтобы выводились избранные со всех (или из нескольких конкретных) категорий?
Заранее благодарю за ответы!
« Последнее редактирование: 15.12.2018, 23:32:36 от Dgikar »
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
следует воспользоваться не блогом категории, а избранными материалами, и переопределять уже их
templates/my_tepl/html/com_content/featured/*.php
*

Dgikar

  • Захожу иногда
  • 192
  • 3 / 0
  • Я только учусь
следует воспользоваться не блогом категории, а избранными материалами...
Это я понимаю, но как их мне тогда вставить в blog.php (потому как этот слайдер, должен отображаться именно в blog.php)? Вот этого не понимаю... И второе, никогда не работал с templates/my_tepl/html/com_content/featured/*.php, там отображаются все избранные материалы из всех категорий?
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
там отображаются все избранные материалы из всех категорий?
да
*

Dgikar

  • Захожу иногда
  • 192
  • 3 / 0
  • Я только учусь
ок, тогда как их мне тогда вставить в blog.php (потому как этот слайдер, должен отображаться именно в blog.php)?
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
да не должен он быть в blog.php, что за бред... не трогайте blog.php, он вам вообще не нужен

к пункту меню привяжите Метариалы - Избранные, переопределите в вашем шаблоне макет featured из com_content и заверстайте ваш слайдер именно там

PS: учите Joomla
*

Dgikar

  • Захожу иногда
  • 192
  • 3 / 0
  • Я только учусь
да не должен он быть в blog.php, что за бред... не трогайте blog.php, он вам вообще не нужен
AlekVolsk, ну почему Вы решаете что мне нужно а что нет? Бред?! Бред, - это когда люди вместо прямого ответа на четкий вопрос, начинают рассказывать то, что мне нужно, а что нет, не зная ни мою идею, ни то, что сделано (было и сейчас)...

к пункту меню привяжите Метариалы - Избранные, переопределите в вашем шаблоне макет featured из com_content и заверстайте ваш слайдер именно там
Мне нужно в blog.php, вставить слайдер избранных статей так, как вставляется модуль, но модуль пилить не хотят (понятно что через модуль было бы проще и быстрее). Вот и приходится вылазить через опу...

PS: учите Joomla
Спасибо за помощь!
« Последнее редактирование: 17.12.2018, 13:44:07 от Dgikar »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывести дочерние товары в самой карточке родительского товар VirtueMart

Автор aliallaxverdiev91

Ответов: 2
Просмотров: 3073
Последний ответ 03.03.2024, 11:32:49
от gtiosx
Как вывести Alt картинки в описание Lightbox?

Автор art22

Ответов: 2
Просмотров: 3046
Последний ответ 14.05.2023, 09:21:39
от sivers
Скрыть только текст ссылки

Автор kosh2323

Ответов: 10
Просмотров: 1191
Последний ответ 26.10.2021, 10:40:57
от kosh2323
Ари екст меню - вывод не на всех страницах

Автор ssaich

Ответов: 16
Просмотров: 1796
Последний ответ 20.04.2021, 06:25:33
от ssaich
Мультиязычное меню в Helix-2 (Joomshaper) - отображается только одно из

Автор Арим

Ответов: 4
Просмотров: 3117
Последний ответ 14.04.2021, 21:34:14
от nsklital