Новости Joomla

Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0

Метод registerListeners() в CMSPlugin в плагинах  планируется удалить в Joomla 7.0

👩‍💻 Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0.Этот метод регистрирует устаревшие слушатели событий в диспетчере, имитируя работу плагинов Joomla! 3.x и ниже для Joomla 4+. По умолчанию этот метод ищет все общедоступные методы, название которых начинается с on. Он регистрирует лямбда-функции (замыкания), которые пытаются преобразовать аргументы отправленного события в аргументы вызова метода и вызвать ваш метод on<Что-то>. Результат передаётся обратно событию в его аргумент result.Теперь этот слой совместимости с устаревшей Joomla 3 помечен к удалению в Joomla 7.0, которая должна выйти осенью 2027 года. Это означает, что те уникальные расширения от Joomla 2.5 / Joomla 3, которые ещё работали на Joomla 4-6 скорее всего окончательно перестанут работать на Joomla 7. Предполагается, что активные разработчики планомерно и постепенно избавляются от технического долга и обновляют свои расширения. @joomlafeed#joomla #разработка #php

0 Пользователей и 1 Гость просматривают эту тему.
  • 4 Ответов
  • 1671 Просмотров
*

scandium

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Всем привет.

Подскажите, пожалуйста, как получить id и название статьи в хелпере моего самописного модуля, зная id категории.
Пересмотрел поверхностно что есть в Joomla 3.3 API и нашёл пока тока один потенциальный вариант - подгрузить таблицу content в Jtable и уже из неё получить массив с нужными мне статьями. Может есть какие-то другие варианты?

Всем заранее спасибо за ответ!
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Можно еще использовать модель, я вот таким образом еще делал:
Код: php
$model = JModelLegacy::getInstance('category', 'contentModel', array('ignore_request'=> true));
$model->setState('params', JFactory::getApplication()->getParams());
$model->setState('category.id', 'root'); //root корневая категория, вместо нее можно указать id-шник категории
$articles = $model->getItems();

Получите в articles массив объектов статей категории. Правда вот думается мне что если нужно только id и название, то лучше будет написать прямой запрос к таблице и быстрее будет и для памяти экономнее.
интернет-блог: http://websiteprog.ru
*

scandium

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Спасибо!
Ну это мне пока нужно только название и id.
В дальнейшем ещё точно понадобятся другие свойства статей, но пока не знаю точно какие.
*

b2z

  • Глобальный модератор
  • 7287
  • 778 / 0
  • Разраблю понемногу
В данном случае лучше прямой запрос. Вы посмотрите, сколько всего тащит getItems(). Вам 99,9% процентов не нужно!

Код: php-brief
$db = JFactory::getDbo();

$query = $db->getQuery(true)
->select(
$db->quoteName(
array('id', 'title')
)
)
->from($db->quoteName('#__content'))
->where($db->quoteName('catid'). ' = ' . (int) $categoryId);

$db->setQuery($query);
$articles = $db->loadObjectList();
*

scandium

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
 :o Согласен, что многовато:)))
Да не буду таким способом делать. Да и теперь всё равно придётся напрямую запрос делать, потому что не обычные статьи вытягивать придётся, а из com_k2.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Отправка файлов через ajax в модуль Joomla

Автор hemicide

Ответов: 19
Просмотров: 2336
Последний ответ 11.04.2022, 08:44:33
от sivers
Получение IP, Host, Country штатными средствами

Автор SkyAn

Ответов: 0
Просмотров: 447
Последний ответ 16.12.2021, 15:39:01
от SkyAn
Модуль ajax фильтрации статей по меткам и категориям

Автор antarey

Ответов: 2
Просмотров: 890
Последний ответ 03.06.2019, 23:20:55
от antarey
Изменения id для отображения названия в компоненте Joomla

Автор ice77

Ответов: 69
Просмотров: 5269
Последний ответ 21.05.2018, 17:32:46
от ice77
[Решено] Запись в несколько таблиц при создании материала через плагин аналог onContentAfterSave

Автор Barabashka

Ответов: 7
Просмотров: 1480
Последний ответ 26.10.2016, 22:43:44
от dmitry_stas