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

volodja v

  • Новичок
  • 8
  • 0 / 0
Всем привет!

У меня в проекте на Joostina, использован модуль ExtedetMenu. На нем сделаны 4 меню. Одно основное и три дополнительных.
В настройках модулей дополнительных меню, я через панель "Связь с пунктом (пунктами) меню: " указал в каких разделах основного меню, показывать то или иное дополнительное меню. Доп. меню у меня появляется в левой части сайта отдельным окном. Такое требование дизайна. Так вот, все хорошо кроме PathWay (пути), что показывате Джустина. Она не показывает путь корень/раздел основного меню/раздел дополнительного меню. Второго звена нет. Возможно кто знает где и что покрутить или что дописать (переставить) чтобы путь отображался верно?
*

volodja v

  • Новичок
  • 8
  • 0 / 0
Сам задал вопрос, сам и отвечу:

-- никак

В скрипте include/pathway.php формируется "путь".
Последовательность примерно такая:
1. Определяем "главную".
2. Определеяем "текущую"
3. Смотрим у текущего меню свойства Parent (родитель)
3.1 если есть, идем к нему, выводим и опять ищем Parent

Так вот, делая разные меню, поле Parent у них равно нулю. Попытка установки насильно Parent  у раздела подменю разных меню приводит к тому, что система просто эти разделы не показывает. Ни в админке, не при выводе.

Решение - насильно дописал скрипт. Если текущий раздел "такой то", то подставляем Parent такой то.
Благо сайт не большой  ;D

Не могли бы вы помочь мне с разрешением одной проблемы?

Вопрос связан с построением пути pathway

У меня есть главное меню с древовидной структурой.
Если я хожу по меню (кликаю только по ссылкам меню), то путь строится верно,
НО стоит только мне кликнуть
по  ссылке  категории  которая  выводится  в  основной контент
области, путь нарушается.

ПРИМЕР:
Если  кликать  углубляясь по главному меню, путь выстраивается
таким вот образом:

Главная -> Новости -> Новости культуры  (Это верно)

Если я сначала кликну по ссылке "Новости", в главном меню
то выстраивается логичный путь:

Главная -> Новости

но   потом я  кликаю по ссылке "Новости культуры" (не в главном
меню),  а по той, которая  формируется в основной контент области, то здесь
путь нарушается и выглядит так:

Главная -> Новости культуры

а по логике должно быть:

Главная -> Новости -> Новости культуры

Как решить эту задачу?
*

volodja v

  • Новичок
  • 8
  • 0 / 0
Ссылочку дайте на ваш проект посмотреть. пожалуйста.

PS: http://www.linuxwizard.ru/content/blogsection/5/93/ - ссылка на Блок-раздел с главного меню, все работает, путь "верно" формируется.
Тоже самое у меня и в разделе "Новости", тоже все тип-топ. Где то что то у вас не верно настроено, думаю с "программной" частью это ни как не связано. :-)
*

aleksej

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
здравствуйте!  


Warning: include(/home/site/joomla/pathway.php) [function.include]: failed to open stream: No such file or directory in /home/site/joomla/templates/countrygingham/index.php on line 36

Warning: include() [function.include]: Failed opening '/home/site/joomla/pathway.php' for inclusion (include_path='.:/usr/share/php') in /home/site/joomla/templates/countrygingham/index.php on line 36



такая ошибка на всех страницах после шапки.   что делать??
извиняюсь что пишу не в тему, но нигде такого найти не смог
*

volodja v

  • Новичок
  • 8
  • 0 / 0
здравствуйте!  


Warning: include(/home/site/joomla/pathway.php) [function.include]: failed to open stream: No such file or directory in /home/site/joomla/templates/countrygingham/index.php on line 36

Warning: include() [function.include]: Failed opening '/home/site/joomla/pathway.php' for inclusion (include_path='.:/usr/share/php') in /home/site/joomla/templates/countrygingham/index.php on line 36



такая ошибка на всех страницах после шапки.   что делать??
извиняюсь что пишу не в тему, но нигде такого найти не смог

Ну так у вас же все написано
Цитировать
include(/home/site/joomla/pathway.php) [function.include]: failed to open stream
Путь не верно указывается. По этому пути данного файла нет.
Скорее всего путь не верно написан в файле configuration.php, тот что лежит в корне Joomla.
Проверять нужно переменные с примерным именем mosConfig_Lifesite, mosConfig_pathsite
*

monkozzz

  • Захожу иногда
  • 73
  • 0 / 0
Warning: cannot yet handle MBCS in html_entity_decode()! in /home/krishna/public_html/libraries/joomla/application/pathway.php on line 209

Мне вот такое пишет. как полечить? обновился с 1.5.14 на 1.5.15 версию.

Ой сорри. тупо скопировал старый файлик pathway.php и всё заработало
*

volodja v

  • Новичок
  • 8
  • 0 / 0
Ну вот, сайт мой стал уже большим и нужно искать другие, альтернативные способы решения. Постоянно "дописывать" скрипт pathway.php стало накладно. Пришлось вернутся к этому вопросу еще раз. И вот что у меня получилось:

При создании новой компоненты ExMenu мы
а) выбираем меню которое должен отображать этот новый компонент
б) указываем связь компонента с пунктами существующего меню, в правой колонке.

То есть, теоретически, мы связь уже делаем, построить "путь" можно зная ее.

За эту связь отвечает таблица jos_modules_menu
Поля в этой таблице следующие: moduleid, menuid
То есть номер модуля и номер меню.

Далее мы дописываем скрипт include/pathway.php  следующим образом:
После функции function pathwayMakeLink( $id, $name, $link, $parent, $menutype = null ) вставляем свою функцию:

Код: php
/*
 * Функция поиска родительского меню
 * Возращает номер родительского пункта меню, если пункт не найден возращает 0
 * Если не верно передали параметр, возращает False
 */
function MenuParentSearch($item) {
global $database;

if (isset($item) && is_object($item)) {
// получаем Id модуля по номеру раздела
$query = "SELECT moduleid"
."\nFROM #__modules_menu"
."\nWHERE menuid=".(int) $item->id;

$database->setQuery( $query );
$module_id = $database->loadRow();

// получаем список связанных разделов с этим модулем
$query = "SELECT jmm.menuid AS id, jm.menutype AS menutype"
."\nFROM #__modules_menu AS jmm"
."\nLEFT JOIN #__menu AS jm ON jm.id=jmm.menuid"
."\nWHERE jmm.moduleid = ".(int) $module_id[0]
."\nGROUP BY jm.menutype";

$database->setQuery( $query );
$lookup = $database->loadObjectList();

// если типы разные, входной и первый найденный - это родитель
foreach ($lookup as $row) {
if ($row->menutype != $item->menutype) {
$parent = $row->id;
}
}

if (isset($parent)) {
return $parent;
} else {
return 0;
}

} else {
return false;
}

}


и в нижней части скрипта, в месте где скрип определяет "Родителя", вставляем условие вызова этой функции

Код: php
		if (trim($newlink)!="") {
$path = $img .' '. $newlink .' '. $path;
} else {
$path = '';
}

// если "родителя нет" или значение равно нулю и тип меню не основной, любой другой
if (!isset($item->parent) || $item->parent == 0 && $item->menutype != "mainmenu" && $item->menutype != "topmenu") {
// вызываем функцию поиска родителя
$item->parent = MenuParentSearch($item);
}

$mid = $item->parent;


* обратите внимание что в скрипте, в условии, есть дополнение && $item->menutype != "topmenu" --> уберите его.
У меня на сайте Два основных меню, у вас, скорее всего, один, mainmenu.

* ну и понятно, что применяю эту доработку, путь в виде трех и более уровней работать не будет.

* в случае если у вас вызывается с титульной странице "Поиск" или скажем карта сайта, то путь тоже работать не будет, так как построение его идет из меню.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Подскажите меню

Автор Dimah55

Ответов: 0
Просмотров: 4482
Последний ответ 12.10.2015, 22:46:46
от Dimah55
Посоветуйте меню, открывающееся при клике

Автор Dekameron

Ответов: 0
Просмотров: 4608
Последний ответ 07.09.2015, 11:08:11
от Dekameron
Многоуровневое раскрывающееся горизонтальное меню в Joomla 2.5

Автор GuDeVic

Ответов: 15
Просмотров: 21625
Последний ответ 18.02.2015, 11:46:16
от iperm
Выпадающее меню вверх. Возможно ли?

Автор serjik

Ответов: 15
Просмотров: 15265
Последний ответ 23.07.2014, 10:07:55
от paitor
Настройка внешнего вида меню

Автор dept

Ответов: 1
Просмотров: 6604
Последний ответ 21.10.2013, 01:34:48
от Elmurza