Новости Joomla

Joomla 6: Автоматические обновления ядра в Joomla

Joomla 6: Автоматические обновления ядра в Joomla

👩‍💻 Joomla 6: Автоматические обновления ядра в Joomla. В октябрьском номере официального журнала Joomla - Joomla Community Magazine вышла статья David Jardin, где рассказывается о внедрении функционала автоматического обновления ядра Joomla.❓Почему сейчас? Joomla же жила как-то 20 лет без автоматических обновлений?Это оказалась самая востребованная за последнее время от пользователей Joomla функция. Но, основная причина внедрения - проблемы безопасности. Всякий раз, когда в новой версии Joomla устраняется уязвимость, злоумышленники начинают анализировать код, чтобы выяснить, какая именно уязвимость была исправлена. И как только они это выясняют - начинается разработка автоматизированных скриптов для взлома как можно большего количества сайтов. Затем доступы к автоматически взломанным сайтам продаются в профильных чатах и ресурсах "пачками" по несколько сотен тысяч или миллионов сайтов. Ваш сайт могли взломать несколько лет назад, но воспользоваться уязвимостью могут не сразу, а тогда, когда у злоумышленников возникнет необходимость. И только после этого вы может быть узнаете об этом.Анализ патча, понимание проблемы и разработка скрипта требуют времени. И если владелец сайта не обновит его до истечения этого срока, сайт может быть взломан. А хакеры действуют быстро! Для критических, легко эксплуатируемых уязвимостей речь идёт о временном окне в 10–12 часов — и этого времени явно недостаточно, чтобы все успели обновить свои сайты.Здесь выходят на первый план автоматизированные обновления: проект Joomla теперь может активно устанавливать обновления (и, следовательно, исправления безопасности) на сайты, чтобы гарантировать, что сайты действительно обновляются вовремя.🕘 От первых идей до реализации прошло 5 лет. И здесь можно вспомнить, как в Joomla 5.1 внедрили TUF - The Update Framework, позволяющий устанавливать защищённое соединение между сайтом и сервером обновлений и исключает возможность supply chain attack (атаки на цепочку поставок).Об особенностях реализации и требованиях к сайту читаем подробнее в статье на JCM.@joomlafeed#joomla #secutiry #jcm

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™. Интервью с волонтёрами 🎈Ну что, друзья, вот и настал этот долгожданный момент. Мы выпустили первое издание собственного журнала под эгидой NorrNext, который включает в себя интервью с видными деятелями сообщества из разных стран и континентов.Общий нарратив: показать, что нас объединяет (Joomla) и узнать больше о людях, которые вносят свой вклад в развитие платформы в своих сообществах. 20 лет — это много. Давайте же узнаем о коллегах 🎁 Первый цикл включает такие страны, как Австрия, Испания, Латвия, Россия, Румыния, Тайланд, Черногория, Чехия.⚙️ С кем интервью: ✔️ Владимир Елисеев 🇷🇺✔️ Дмитрий Рекун 🇱🇻✔️ Дмитрий Цымбал 🇷🇺✔️ Евгений Сивоконь 🇷🇺 ✔️ Сергей Толкачёв 🇷🇺✔️ Dénes Székely 🇷🇴✔️ Jan Pavelka 🇨🇿✔️ Miljan Vujosevic 🇲🇪✔️ Sergio Iglesias 🇪🇸✔️ Sigrid Gramlinger 🇦🇹✔️ Pisan Chueatchatchai 🇹🇭‼️ Новые интервью будут добавляться до конца декабря 2025. Заходите по ссылке время от времени💡👉 Читать далее

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

fbr

  • Завсегдатай
  • 1677
  • 208 / 7
Привет!
Копаюсь в модуле. Задача из нескольких категорий вывести одинаковое количество материалов.

Пытался через модель в helper.php - никак ((

Код: php
...
$model->setState('list.limit', 100);
$model->setState('list.select', 'a.id, a.title, a.alias, a.introtext, a.catid' );
$model->setState('filter.category_id', $params->get('catid', array()));
...

Как задать лимит вывода для каждой категории? Например 10.

Гуглил, думал, решения не нашел ... Устал тупить.
Или стандартно не решается? Отказаться от Joomla-API и писать запрос в рукопашную? (честно, не силен ..)
*

Aponte

  • Захожу иногда
  • 122
  • 3 / 3
Так посмотри как сделано в стандартном модуле, там же есть количество материалов.
Просто добавить туда фильтр по категориям
*

fbr

  • Завсегдатай
  • 1677
  • 208 / 7
В стандартном модуле задается лимит на общее количество записей.
А мне нужен лимит в каждой категории
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Тут дело не в АПИ. Если Вы придумаете такую структуру запроса к БД, чтоб Вам подошла - перевести на АПИ будет раз плюнуть. Сначала словами напишите как должен выглядеть запрос. Структуру запроса. Логику.

Думаю, нужно писать несколько запросов - к каждой категории, и потом их объединять в один. Если количество категорий не известно заранее - в цикле.
« Последнее редактирование: 05.09.2015, 08:59:40 от Taatshi »
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

fbr

  • Завсегдатай
  • 1677
  • 208 / 7
Вот такое решение с переменными нашел в интернете:
Код: sql
set @num := 0, @type := '';

select type, variety, price, @num
from fruits
where
   (@num := if(type = @type, @num + 1, 1)) is not null
   and (@type := type) is not null
   and (@num <= 2);

+--------+----------+-------+------+
| type   | variety  | price | @num |
+--------+----------+-------+------+
| apple   | gala       |  2.79 | 1    |
| apple   | fuji        |  0.24 | 2    |
| orange | valencia |  3.59 | 1    |
| orange | navel     |  9.36 | 2    |
| pear    | bradford |  6.05 | 1    |
| pear    | bartlett   |  2.14 | 2    |
| cherry | bing       |  2.55 | 1    |
| cherry | chelan     |  6.33 | 2    |
+--------+----------+-------+------+


Вывод
Интересно, как это будет выглядеть при использовании апи Joomla
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Вот такое решение с переменными нашел в интернете:
Интересно, как это будет выглядеть при использовании апи Joomla
Да обычно будет выглядеть
Спойлер
[свернуть]

 вот только на просторах интернета пишут о больших проблемах в производительности в запросах которые используют IF ELSE
« Последнее редактирование: 05.09.2015, 11:58:06 от Istaan »
*

fbr

  • Завсегдатай
  • 1677
  • 208 / 7
Подскажите, пожалуйста, как это упрощенно выглядело бы с использованием

$model->setState()

или

$query = $db->getQuery(true)
        ->select(array())
        ... ;
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Не совсем понял тему, но IMHO, можно попробовать через foreach выводить каждую категорию.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

fbr

  • Завсегдатай
  • 1677
  • 208 / 7
Тема простая: есть массив $list, содержащий материалы из разных категорий
Количество определено в $model->setState('list.limit', 20);
Сортировку задал по catId, publish_up

Предположим, категорий 5, в первой категории 15 материалов, во второй 5
Запрос к БД вернет только 2 категории из 5
В foreach прогонять поздно ...
Нужно на уровне запроса задать лимит для каждой категории
Можно, конечно, лимит сделать с запасом 1000 ... Но это как-то расточительно)

Может я логику Неправильно построил?
Подскажете как, плз))
« Последнее редактирование: 05.09.2015, 13:15:55 от fbr »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Если у вас модуль и нет необходимости в JPagination, то я бы просто сделал свой запрос в БД с использованием UNION.
Если вы хотите использовать Joomla API (в данном случае метод getItems(), я подозреваю), то можно попробовать прогонять через foreach, как я писал выше, но не результат запроса, а массив ID нужных категорий, каждый раз задать нужный лимит и получить нужное количество материалов конкретной категории. Это предположение, не проверял еще, но думаю, что должно сработать.

P.S. Проверил, работает.
« Последнее редактирование: 05.09.2015, 19:34:25 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Вот рабочий код
Код: php-brief
$model=JModelLegacy::getInstance('Articles','ContentModel');
$items=array();
$cats2lims=array('8'=>'2','2'=>'3');
foreach($cats2lims as $cat=>$lim){
$model->setState('filter.category_id',$cat);
$model->setState('list.limit',(int)$lim);
$subitems=$model->getItems();
$items=array_merge($items,$subitems);
}
Выводит 2 материала из категории 8 и 3 - из категории 2, $items и есть ваша $list.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
О ужас )
:(

P.S. Istaan, все-таки почему этот код навел на вас такой ужас? Уточню, я это делал в view компонента с целью выводить на каждой странице по 2 материала из категории 8 и 3 - из категории 2.
« Последнее редактирование: 06.09.2015, 09:36:58 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Получить количество активных модулей в определенной позиции

Автор zemelea

Ответов: 2
Просмотров: 1971
Последний ответ 18.02.2014, 11:13:05
от Aleks.Denezh
[Решено] Пагинация в Joomla 2.5 Жестко прописать количество элементов на страницу

Автор Зверушь

Ответов: 4
Просмотров: 3492
Последний ответ 10.01.2014, 16:03:03
от Зверушь
[Решено] Удаление ID из материалов в своём компоненте

Автор n_drey

Ответов: 9
Просмотров: 1526
Последний ответ 25.12.2013, 16:46:54
от n_drey
Как добавить свой фильтр к выводу материалов?

Автор Roporak

Ответов: 1
Просмотров: 4040
Последний ответ 27.11.2013, 23:44:35
от voland
Как добавить вид отображения категории?

Автор Asttoxa

Ответов: 3
Просмотров: 5395
Последний ответ 20.11.2013, 14:07:59
от Asttoxa