Новости Joomla

Вышли релизы Joomla 6.0.3 и Joomla 5.4.3

Релиз Joomla 6.0.3 и Joomla 5.4.3

Проект Joomla рад сообщить о выпуске Joomla 6.0.3 и Joomla 5.4.3. Это релиз исправлений ошибок и улучшений для серии Joomla 6.0 и Joomla 5.4.

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

SindBAD

  • Осваиваюсь на форуме
  • 40
  • 3 / 1
Всем привет.
Написал модуль, выводящий нормальное дерево категорий VirtueMart.
Так как названия категорий берутся прямиком из таблицы vm_category, переводов он не отображает.
Вопрос такой: как "по правилам", без костылей заставить работать переводы? Может быть, надо элемент XML создать?
Про вариант "Определить язык- Запросить перевод" прямо из модуля я уже думал, но это как-то тупо.
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
А у вас в SQL-запросе, выбирающем данные, поле ID (ну или как оно там называется  в vm_category) вытягивается? В общем в запросе должен присутствовать первичный ключ таблицы, тогда перевод подтянется.

Compatible Query Construction
*

SindBAD

  • Осваиваюсь на форуме
  • 40
  • 3 / 1
Запрос таким вот образом происходит
Код
$db = new ps_DB;
$query="SELECT a.`category_parent_id`, b.`category_id` AS 'id', b.`category_name` AS 'name'
FROM `#__{vm}_category_xref` a
LEFT JOIN `#__{vm}_category` b ON b.`category_id`=a.`category_child_id`
WHERE b.`category_publish`='Y'
ORDER BY `category_parent_id` ASC,b.`list_order` ASC, b.`category_name` ASC";
$db->setQuery($query);
$db->query();

b.`category_id` - первичный ключ таблицы
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Попробуй их местами поменять (сначала поля из таблицы b, потом из a), и там где таблицам алиасы назначаешь вставь AS (в принципе не обязательно, хз как JoomFish это обрабатывает). И еще судя по запросу - выбираешь N-записей, а почему query()? Это же просто выполнение запроса, данные-то не вернет.
*

SindBAD

  • Осваиваюсь на форуме
  • 40
  • 3 / 1
Попробуй их местами поменять (сначала поля из таблицы b, потом из a), и там где таблицам алиасы назначаешь вставь AS (в принципе не обязательно, хз как JoomFish это обрабатывает). И еще судя по запросу - выбираешь N-записей, а почему query()? Это же просто выполнение запроса, данные-то не вернет.
Потому что далее идёт
Код
while($db->next_record()){
$category_parent_id = $db->f("category_parent_id");
$id = $db->f("category_id");
if(!isset($xref[$category_parent_id])){
$xref[$category_parent_id] = array();
}
$xref[$category_parent_id][] = $id;
$cats[$id] = $db->f("name");
}
Т. е. данные извлекаются VM-овским итератором (иначе проблема с кавычками).

Запрос уже всячески перестраивал, ничего не помогает...
Код
SELECT a.`category_child_id`, b.`category_id`, a.`category_parent_id`, b.`category_name` AS 'name' 
FROM `#__{vm}_category` AS b
LEFT JOIN `#__{vm}_category_xref` AS a ON b.`category_id`=a.`category_child_id`
WHERE b.`category_publish`='Y'
ORDER BY `category_parent_id` ASC,b.`list_order` ASC, b.`category_name` ASC


UPD: провёл интересный эксперимент. Оказывается, мешают псевдонимы, причем как для таблиц, так и для полей.
Вот 100% рабочий запрос:

SELECT
`category_id`,
`category_name`,
`category_parent_id`
FROM `#__{vm}_category`
LEFT JOIN `#__{vm}_category_xref` ON `category_id`=`category_child_id`
WHERE `category_publish`='Y'
ORDER BY `category_parent_id` ASC, `list_order` ASC, `category_name` ASC

Своеобразно обрабатывает, придётся это учитывать при разработке своих расширений.
« Последнее редактирование: 19.10.2011, 12:37:20 от SindBAD »
*

SindBAD

  • Осваиваюсь на форуме
  • 40
  • 3 / 1
А тут никак нельзя "сказать спасибо"? Всё-таки, наводка на структуру запроса помогла)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

JoomFish ошибка в синтаксисе базы данных после обновления!

Автор Dim

Ответов: 6
Просмотров: 6512
Последний ответ 01.12.2018, 16:04:39
от Dim
как быть без JoomFish в Joomla 3?

Автор pikos

Ответов: 2
Просмотров: 6909
Последний ответ 22.09.2016, 06:47:37
от pikos
как быть без JoomFish в Joomla 3?

Автор pikos

Ответов: 1
Просмотров: 5905
Последний ответ 21.09.2016, 11:37:11
от dmitry_stas
Существует ли компонент JoomFish для Joomla 3.х

Автор pikos

Ответов: 3
Просмотров: 6190
Последний ответ 21.09.2016, 10:34:53
от dmitry_stas
Не активен заголовок при переводе в JoomFish

Автор Mu2D

Ответов: 0
Просмотров: 5627
Последний ответ 01.07.2016, 18:23:08
от Mu2D