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

luckywookie

  • Захожу иногда
  • 75
  • 4 / 0
  • Плазменный инжектор-жизнь моя :))
Люди добрые, подскажите, пожалуйста, как сделать чтобы в модуле mod_virtuemart_latestprod выдавались проукты из определенных категорий..
Дело в том что я уже пробовала прописать id категорий в модуле... если ставлю хоть какое-то id, тогда не отображает ничего!! :(
Кстати, насчет id, я захожу и смотрю список категрий, это самый левый столбец? Хотя я пробовала разные варианты... :(
Может кто-то уже так делал, поделитесь опытом или мыслями! ^-^
*

luckywookie

  • Захожу иногда
  • 75
  • 4 / 0
  • Плазменный инжектор-жизнь моя :))
Тааак, немного разобралась...
Я не те id выставляла, оказывается их можно посмотреть только в юрл!
И еще проблема, оказывается что нельзя назначить несколько категорий...
*

luckywookie

  • Захожу иногда
  • 75
  • 4 / 0
  • Плазменный инжектор-жизнь моя :))
Нашла хак для mod_virtuemart_featureprod(для товаром со спец.условием), чтобы можно было из нескольких категорий показывать товары...
Находим mod_virtuemart_featureprod.php там ищем
Код
if ( $category_id ) {
...
...
}
Заменяем на
Код
if ( $category_id ) {
// BEGIN - MultiCategory Display - deneb
$cat_ids = explode(",",$category_id);
if (count($cat_ids) > 1){
$multi_cats = 1;
}
// END - MultiCategory Display - deneb

$q  = "SELECT DISTINCT product_sku FROM #__{vm}_product, #__{vm}_product_category_xref, #__{vm}_category WHERE \n";
$q .= "(#__{vm}_product.product_parent_id='' OR #__{vm}_product.product_parent_id='0') \n";
$q .= "AND #__{vm}_product.product_id=#__{vm}_product_category_xref.product_id \n";
$q .= "AND #__{vm}_category.category_id=#__{vm}_product_category_xref.category_id \n";
// BEGIN - MultiCategory Display - deneb
if ($multi_cats){
$i = 1;
$q .= "AND (";
foreach ($cat_ids as $cat_id){
if ($i == count($cat_ids)){
$q .= "(#__{vm}_category.category_id='$cat_id')";
} else {
$q .= "(#__{vm}_category.category_id='$cat_id') OR \n";
}
$i++;
}
$q .= ")  \n";
} else {
$q .= "AND #__{vm}_category.category_id='$category_id' \n";
}
// END - MultiCategory Display - deneb
$q .= "AND #__{vm}_product.product_publish='Y' \n";
$q .= "AND #__{vm}_product.product_special='Y' \n";
if( CHECK_STOCK && PSHOP_SHOW_OUT_OF_STOCK_PRODUCTS != "1") {
$q .= " AND product_in_stock > 0 \n";
}
$q .= "ORDER BY product_name ASC LIMIT 0, $max_items \n";
}
^-^ :-*
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как убрать список категорий с главной страницы virtuemart 1.1.3?

Автор SynVelesa

Ответов: 6
Просмотров: 10903
Последний ответ 07.06.2018, 00:21:52
от iGatto
Добавить классы для каждой категории в модуле вывода категорий

Автор dron

Ответов: 5
Просмотров: 1676
Последний ответ 16.04.2017, 18:31:51
от fsv
Задать товарам сразу несколько категорий массово

Автор holovla

Ответов: 0
Просмотров: 1404
Последний ответ 09.04.2017, 00:50:56
от holovla
Как отключить показ категорий в магазине VirtueMart.

Автор ink1993

Ответов: 0
Просмотров: 1252
Последний ответ 17.12.2016, 01:59:54
от ink1993
Вывод категорий VirtueMart

Автор Deryan

Ответов: 13
Просмотров: 6426
Последний ответ 06.10.2016, 19:58:54
от shell88