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

denmos

  • Захожу иногда
  • 96
  • 7 / 0
  • SINTEZ2 + мафон "легенда"
Здрасти!)

Предлагаю Вашему вниманию на тестирование небольшой хак "поиск по расположению" - актуально для раздела о недвижимости

Итак:
1. Создаём поле Name: ad_raspol, Type: Single select, Search Option: on
    Добавляем переменные: Add a value
        например:   NAME                  VALUE
                         город1               1-10
                         - улица1            2
                         - улица2            3
                         район города1  20-30
                         - город2             21
                         - деревня1         22

2. Вносим изменения в /components/com_adsmanager/adsmanager.php
   строка ~282
    
Код
$search .= " AND a.$fsearch->name = '$value'";
    меняем на
    
Код
//  hack raion
$pos = strpos($value, '-');
$fieldsql = "a.$fsearch->name + 0";
if ($pos !== false)
{
if ($pos == 1)
{
$search .= " AND $fieldsql < '".substr($value,1)."'";
}
else if ($pos == strlen($value) - 1)
{
$search .= " AND $fieldsql > '".substr($value,0,strlen($value)-1)."'";
}
else
{
$search .= " AND ($fieldsql >= '".substr($value,0,$pos)."' AND $fieldsql <= '".substr($value,$pos+1)."')";
}
}
else $search .= " AND a.$fsearch->name = '$value'";

Всё.
Т.о. если в расширенном поиске выбрать улица1 -> выдаёт только улица1
                                                           город1 -> выдаёт город1 + улица1 + улица2

У меня работает. Тестировалось на 2.5
Предложения, замечания приветствуются. Прошу отписаться по результатам тестирования ^-^
« Последнее редактирование: 14.05.2011, 23:24:33 от denmos »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Поиск по текстовым полям AdsManager

Автор Den85

Ответов: 4
Просмотров: 10723
Последний ответ 19.01.2019, 14:28:47
от Den85
AdsManager Расширенный поиск

Автор MakGrouman

Ответов: 1
Просмотров: 11016
Последний ответ 25.12.2018, 08:30:30
от MakGrouman
AdsManager поиск в категориях

Автор oleksyayko

Ответов: 4
Просмотров: 17084
Последний ответ 28.01.2018, 14:54:11
от alex79
Каждой категории свой поиск

Автор cheroky

Ответов: 6
Просмотров: 1435
Последний ответ 07.12.2015, 01:58:31
от voras
Расширенный поиск на cтранице категорий AdsManager

Автор akhalex38

Ответов: 1
Просмотров: 1299
Последний ответ 30.07.2015, 16:43:47
от akhalex38