Новости Joomla

‼️ 👩‍💻 Обновление безопасности для Tassos Framework!

‼️ 👩‍💻 Обновление безопасности для Tassos Framework!

7 января 2026 года греческому разработчику Тассосу Мариносу сообщили об уязвимости в системном плагине Tassos Framework, который входит в состав его расширений для Joomla.

⚠️ Проблема затрагивает следующие расширения:
- Convert Forms - конструктор форм обратной связи для Joomla
- EngageBox - конструктор всплывающих окон для Joomla
- Google Structured Data - пакет плагинов микроразметки для Joomla
- Advanced Custom Fields - пакет плагинов пользовательских полей (видео-сервисы, карты и иже с ними)
- Smile Pack - пакет расширений
- MailChimp Auto-Subscribe

Незамедлительно была проведена полная внутренняя проверка кода, внедрены дополнительные меры проверки и повышения безопасности, а также выпущены исправленные версии всех затронутых расширений. Проблема полностью решена.

👉 Суть уязвимости.
Уязвимость заключалась в том, как плагин Tassos Framework обрабатывал определенные AJAX-запросы через com_ajaxточку входа Joomla. При определенных условиях внутренняя функциональность фреймворка могла быть вызвана без надлежащих ограничений.

В худшем случае это могло позволить неавторизованному злоумышленнику читать файлы, доступные веб-серверу. Это также могло позволить удалять файлы с сервера при выполнении определенных условий.

При определенных обстоятельствах запросы к базе данных могли быть изменены для извлечения данных из базы данных Joomla. В совокупности эти возможности потенциально могли быть использованы для повышения уровня доступа и выполнения несанкционированного кода.

В настоящее время нет никаких доказательств того, что эта уязвимость была использована в реальных условиях.

Немедленно обновите расширения до безопасных версий (Joomla 4/5/6 | Joomla 3):
- Convert Forms - v5.1.1 / v.4.1.1
- EngageBox - v.7.1.1 / v,6,3,9
- Google Structured Data - v.6.1.1 / v.5.6.9
- Advanced Custom Fields - v.3.1.1 / v.2.8.10
- Smile Pack - v.2.1.1 / v.1.2.4.
- MailChimp Auto-Subscribe - v.5.1.1+ / v.5.0.4

Все указанные версии включают в себя релиз безопасности плагина Tassos Framework System Plugin v6.0.62.

Если у вас установлено несколько расширений Tassos, достаточно обновить только одно, чтобы применить патч. Однако всегда рекомендуется обновлять все расширения.

@joomlafeed

👩‍💻 Joomla включена в программу Google Summer of Code 2026.

👩‍💻 Joomla включена в программу Google Summer of Code 2026.

Google Summer of Code (GSoC) - программа компании Google, которая позволяет участникам программы под руководством опытных наставников писать код для организаций, занимающейся открытым исходным кодом. Joomla принимает участие в этой программе не в первый раз и в 2026 году снова включена в список GSoC. Для программы утверждается список "идей", воплотить которые должны участники под руководством наставников.

Проекты Joomla в рамках программы GSoC 2026.

Проект I: Ajax-бэкенд.
- Действия в административной панели без необходимости обновлять страницу.
- Автоматическое сохранение содержимого во время редактирования.
- Расширенный фильтр - поиск и фильтрация по пользовательским полям.

Проект II: Автоматизация рабочих процессов (workflow + task scheduler).
Joomla имеет функцию процессов и планировщика задач. Теперь эти две функции следует объединить, чтобы пользователь мог настраивать назначенные рабочие процессы таким образом, чтобы переходы выполнялись автоматически, с возможностью точного определения времени. Должна быть возможность создавать циклы или прямые запланированные рабочие процессы. Предполагается, что интерфейс должен учитывать хороший пользовательский опыт, удобство использования и современные стандарты доступности. Ожидается, что будет добавлен интерфейс для управления процессами и их расписанием на страницах категорий и материалов. Так же ожидается, что сторонние компоненты также смогут воспользоваться этим функционалом.

Проект III: Мультикатегории.
В настоящее время Joomla! не позволяет назначать один элемент нескольким категориям. Хотя система тегов часто используется в качестве замены, существует острая потребность в нативной поддержке нескольких категорий, чтобы привести Joomla! в соответствие с другими современными системами управления контентом.

Проект IV: Обучение с подкреплением на основе отзывов переводчиков.
Joomla собирается использовать автоматический перевод документации. В каждом языке есть свои специфические слова, характерные для Joomla. Предполагается обучать языковые модели, используя обратную связь от переводчиков, чтобы постоянно улучшать качество переводов и учитывать специфические языковые особенности Joomla.

Принять участие GSoC 2026
Подробнее о проектах Joomla GSoC 2026
Чат GSoC в Mattermost (международное сообщество 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.

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

GuDeVic

  • Захожу иногда
  • 228
  • 0 / 0
Здравствуйте!
Мне надо вывести на печать только содержимое модального окна. Я добавила стили для @media print в файл стилей custom.css.
В блокноте эти добавленные стили есть,  а при просмотре кода страницы этих стилей нет. В чем моя ошибка?
Вот что было добавлено:
Спойлер
[свернуть]
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
здра
тут не закрыто
Код
.modal-title {color: red !important;
а чтобы результат смотреть надо эмулировать печать, иначе стили не сработают, что логично, ведь вы смотрите страницу, полученную для экрана, а не для печати...
https://habr.com/ru/company/ruvds/blog/317776/
*

GuDeVic

  • Захожу иногда
  • 228
  • 0 / 0
здра
тут не закрыто
Код
.modal-title {color: red !important;
а чтобы результат смотреть надо эмулировать печать, иначе стили не сработают, что логично, ведь вы смотрите страницу, полученную для экрана, а не для печати...
https://habr.com/ru/company/ruvds/blog/317776/
Спасибо, закрыла скобку. Но стили для печати в custom.css не появились при эмуляции - видно все, что под модальным окном. Я ведь из модального окна на печать перехожу по кнопке. так что та же эмуляция. И никак не могу убрать изображение сайта под модальной формой.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
ну если по этапам, то:
а) custom.css загружается?
б) у вас шаблон на бутстрапе? если нет, то надо редактировать стили и поведение кнопки, вызывающей окно, чтобы по клику ещё и стиль к body цеплялся
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
короче смысл в том, что при вызове окна у вас body дожен прицепляться класс modal-open.
смотрите инспектором, что у вас под окном происходит. если этого класса нет, то логично, что ничего и не произойдет.
*

GuDeVic

  • Захожу иногда
  • 228
  • 0 / 0
ну если по этапам, то:
а) custom.css загружается?
б) у вас шаблон на бутстрапе? если нет, то надо редактировать стили и поведение кнопки, вызывающей окно, чтобы по клику ещё и стиль к body цеплялся
а) конечно, custom.css загружается.
б) шаблон purity_iii, на бутстрапе, модальное окно всплывает
Код
 <button class="btn btn-primary" type="button" data-toggle="modal" data-target="#exampleModal" data-whatever="@getbootstrap">Open modal </button>
<div id="exampleModal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
    <div class="modal-dialog modal-dialog-scrollable modal-lg" style="width: 800px;" role="document">
        <div class="modal-content">
            <div class="modal-header" >
                 <h5 id="exampleModalLabel" class="modal-title" style="float: left; margin-bottom: 0; line-height: 1.5;">ХХХХХ</h5>
                 <button class="close" style="padding: 1rem; margin: -1rem -1rem -1rem auto;" type="button" data-dismiss="modal" aria-
                   label="Close"> <span style="float: right;" aria-hidden="true">×</span> </button>
                  <div style="clean: both;">&nbsp;</div>
          </div><!-- end of header -->
          <div class="modal-body" style="padding-left: 0px; padding-right: 0px;">
              <form>
                 ххххххх
              </form>
          </div> <!-- end of modal-body -->
        </div> <!-- end of modal-content -->
        <div class="modal-footer noprint">
            <button class="btn btn-secondary" type="button" data-dismiss="modal">Close</button>
            <input onclick="window.print()" type="button" value="Print this page" /></div>
        </div>  <!-- end of footer -->
     </div><!-- end of modal-dialog  -->
   </div>
</div> <!-- end of  exampleModal  -->

*

GuDeVic

  • Захожу иногда
  • 228
  • 0 / 0
короче смысл в том, что при вызове окна у вас body дожен прицепляться класс modal-open.
смотрите инспектором, что у вас под окном происходит. если этого класса нет, то логично, что ничего и не произойдет.
Класс modal-open появляется. А вот почему в custom.css не видны стили для print? В блокноте я их вижу, а в инспекторе - нет.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
ну вместо media print поставьте media screen и добивайтесь, чтобы работало при всплытии, как заработает - обратно переименуйте
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
и, кстати, код CSS странный, тк скрывая целиком элемент body ожидать, что что-то внутри него отобразится - не приходится  ;D
вот так работает - первой строкой скрываем ДОЧЕРНИЕ элементы, а не сам коневой контейнер
а следующей строкой отображаем нужный блок и его потомков.
Код
@media screen {
body.modal-open *{display:none}
body.modal-open #exampleModal,  body.modal-open #exampleModal *{ display:block }
}

инспектором посмотрите, какой у вас блок всплывает и его класс или id пропишите, если не сработает.
*

GuDeVic

  • Захожу иногда
  • 228
  • 0 / 0
media screen
ну вместо media print поставьте media screen и добивайтесь, чтобы работало при всплытии, как заработает - обратно переименуйте
ну вместо media print поставьте media screen и добивайтесь, чтобы работало при всплытии, как заработает - обратно переименуйте
Нет, к сожалению и vtdia-screen не видны в scc. Чудеса какие-то.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
что до нерабочего файла - ну тут экстрасенсы перевелись - без ссылки на сайт что-то советовать долго и скучно.
*

GuDeVic

  • Захожу иногда
  • 228
  • 0 / 0
что до нерабочего файла - ну тут экстрасенсы перевелись - без ссылки на сайт что-то советовать долго и скучно.
Вы правы, извините!
После того, как я почистила кэш через инструмент разработчика, файл custom.css стал в инспекторе обновленным. Но, к сожалению, не скрывает при печати то, что мне бы хотелось отключить.
http://web.nioch.nsc.ru/razdel-vnutrennij/mytest
станица открывается довольно долго, потому что формируется выборка из БД из нескольких таблиц БД.
В конце страницы кнопка печать - вывод модального окна. В конце (нужна прокрутка) модального окна кнопка Напечатать страницу.
И при эмуляции, и при печати не исчезает ненужная информация.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
мой последний пример - рабочий, т.е. он очищает страницу при печати (если print вместо screen прописать).
но окно в вашем случае после скрытия всей инфы не появляется, т.к. блок с модальным коном у вас глубоко в теле страницы вложен - т.е. ситуация, о которой я выше писал - окно скрывается вместе с родителем.
вынесите модальное окно непосредственно внутрь body и будет работать.
можете просто вставить мой последний пример кода и прямо в инспекторе поднять блок #exampleModal до верхнего уровня и получите пустую страницу с этим окошком.
если не сможете изначально разместить модальное окно внутри body, то просто в шаблоне создайте пустой блок с уникальным id нужной вложенности и его же вызывайте в качестве модального, и в него перекидывайте js-ом инфу.
тогде и правило сокрытия проще будет - достаточно будет t3-wrapper скрывать и все.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
кстати, вот ещё альтернатива интересная
https://it-blog.ru/js/pechat-straniczy-ili-otdelnogo-bloka-na-sajte/
т.е. динамически создается отдельное окно без всего и в него уже перекидывается инфа.
по сути, можно просто выделить в отдельные стили оформление бланка и можно так печатать.
*

GuDeVic

  • Захожу иногда
  • 228
  • 0 / 0
мой последний пример - рабочий, т.е. он очищает страницу при печати (если print вместо screen прописать).
но окно в вашем случае после скрытия всей инфы не появляется, т.к. блок с модальным коном у вас глубоко в теле страницы вложен - т.е. ситуация, о которой я выше писал - окно скрывается вместе с родителем.
вынесите модальное окно непосредственно внутрь body и будет работать.
можете просто вставить мой последний пример кода и прямо в инспекторе поднять блок #exampleModal до верхнего уровня и получите пустую страницу с этим окошком.
если не сможете изначально разместить модальное окно внутри body, то просто в шаблоне создайте пустой блок с уникальным id нужной вложенности и его же вызывайте в качестве модального, и в него перекидывайте js-ом инфу.
тогде и правило сокрытия проще будет - достаточно будет t3-wrapper скрывать и все.
Спасибо.
А нельзя просто последовательно
body.modal-open *{display:none}
body.modal-open #exampleModal,  body.modal-open #exampleModal *{ display:block }
мой последний пример - рабочий, т.е. он очищает страницу при печати (если print вместо screen прописать).
но окно в вашем случае после скрытия всей инфы не появляется, т.к. блок с модальным коном у вас глубоко в теле страницы вложен - т.е. ситуация, о которой я выше писал - окно скрывается вместе с родителем.
вынесите модальное окно непосредственно внутрь body и будет работать.
можете просто вставить мой последний пример кода и прямо в инспекторе поднять блок #exampleModal до верхнего уровня и получите пустую страницу с этим окошком.
если не сможете изначально разместить модальное окно внутри body, то просто в шаблоне создайте пустой блок с уникальным id нужной вложенности и его же вызывайте в качестве модального, и в него перекидывайте js-ом инфу.
тогде и правило сокрытия проще будет - достаточно будет t3-wrapper скрывать и все.
Спасибо. Сначала хотелось бы проверить, что для печати отключается всё.
Я оставила в custom.css
@media print {
    body.modal-open *{display:none}
         body.modal-open #exampleModal,  body.modal-open #exampleModal *{ display:block }
}
Тогда ведь при нажатии на кнопку "Напечатать  страницу"  в предосмотре должна появиться пустая страница? А там все присутствует . Или я что-то не понимаю и что-то не то делаю?

*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
print - это вид, в котором принтер получит страницу.
его вы увидите ТОЛЬКО ПОСЛЕ ВЫЗОВА ОКНА ПЕЧАТИ по ctrl + P или по нажатию на кнопку печати в модальном окне.
соответственно, без вызова этого окна вы все еще находитесь в режиме screen и правила print не работают.
вот если screen оставите в моем примере, то получите пустую страницу по вызову модального окна
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
такое ощущение, что у вас завалены стили в вашем файле.
если в инспекторе вставить код в начало списка стилей из custom.css, то страница очищается
поставьте код в начало файла.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
вам бы почистить код, а то бедный браузер, по ходу, устает бороться с
Код
ppadding-left
bbackground

и прочими нео-стилями и конец файла уже просто не обрабатывает
*

GuDeVic

  • Захожу иногда
  • 228
  • 0 / 0
вам бы почистить код, а то бедный браузер, по ходу, устает бороться с
Код
ppadding-left
bbackground

и прочими нео-стилями и конец файла уже просто не обрабатывает
дауж. Нет ничего более постоянного, чем временное. Надо все почистить. Спасибо. Поставила в начало - все правильно сработало.
А нельзя ли просто последовательно отключить для показа по id (или классу) шапку сайта, футер и т.д.?
*

GuDeVic

  • Захожу иногда
  • 228
  • 0 / 0
кстати, вот ещё альтернатива интересная
https://it-blog.ru/js/pechat-straniczy-ili-otdelnogo-bloka-na-sajte/
т.е. динамически создается отдельное окно без всего и в него уже перекидывается инфа.
по сути, можно просто выделить в отдельные стили оформление бланка и можно так печатать.
Все замечательно, http://web.nioch.nsc.ru/lokalnye-normativnye-akty-obrazovatelnoj-organizatsii#
Но есть один минус - не сохраняются значения заполненных строк, т.е. просто печать бланков.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
у вас страница - как матрешка, и блок с поп-апом где-то в середине её.
как только вы скроете любого из родителей этого блока - все, вы его не увидите.
поэтому, ещё раз, выносите свой поп-ап прямо внутрь body. это же не сложно
на крайняк создаете пустышку и в неё перекидыаете содержимое, которе у вас сейчас генерируется, если боитесь переделывать код.
перекинуть содержимое элемента - это 1 строка js
*

GuDeVic

  • Захожу иногда
  • 228
  • 0 / 0
кстати, вот ещё альтернатива интересная
https://it-blog.ru/js/pechat-straniczy-ili-otdelnogo-bloka-na-sajte/
т.е. динамически создается отдельное окно без всего и в него уже перекидывается инфа.
по сути, можно просто выделить в отдельные стили оформление бланка и можно так печатать.
А можно как-то сохранить перед печатью значения из заполненных полей?
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
*

GuDeVic

  • Захожу иногда
  • 228
  • 0 / 0
вот так по красоте должно получиться, если jquery использовать

Код
$(windowPrint.document.body).append( $("#exampleModal").clone() );
Что-то не пойму - в каком месте это использовать?  Извините.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
вместо
Код
    windowPrint.document.write(printTitle);
    windowPrint.document.write(printImg);
    windowPrint.document.write(printText);

ставите
Код
$(windowPrint.document.body).append( $("#pril1n").clone() );

и перенесет весь блок целиком, т.е. на надо будет каждому элементу цеплять blur, тк clone забирает и значения полей
*

GuDeVic

  • Захожу иногда
  • 228
  • 0 / 0
$(windowPrint.document.body).append( $("#pril1n").clone() );
вместо
Код
    windowPrint.document.write(printTitle);
    windowPrint.document.write(printImg);
    windowPrint.document.write(printText);

ставите
Код
$(windowPrint.document.body).append( $("#pril1n").clone() );

и перенесет весь блок целиком, т.е. на надо будет каждому элементу цеплять blur, тк clone забирает и значения полей
Действительно, очень красиво. Но не могу проверить, потому что не могу ни в админку войти, ни просто сайт вызвать.  На другом компьютере  сайт загружается, а на этом, за которым я работаю - нет. Я просто в панику впала, что случилось. Помню, что экстрасенсы в отпусках.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

как из Стиль модуля - none, убрать custom

Автор all_zer

Ответов: 3
Просмотров: 1508
Последний ответ 15.11.2025, 16:20:01
от all_zer
Вставка видео со своего сервера через media manager

Автор goga_pgasovav

Ответов: 2
Просмотров: 2077
Последний ответ 27.03.2025, 14:51:43
от Akeksandr
Почему в Phoca Guestbook не защищает Google Captcha?

Автор Mick_20

Ответов: 2
Просмотров: 1501
Последний ответ 24.03.2025, 20:37:10
от R31rus
[Решено] Вывод значений из custom fields материала в модуле по имени поля

Автор goga_pgasovav

Ответов: 3
Просмотров: 2878
Последний ответ 30.12.2024, 13:22:11
от goga_pgasovav
Почему Joomla не поддерживает формат webp?

Автор Sensession

Ответов: 74
Просмотров: 15582
Последний ответ 03.10.2023, 19:44:42
от fsv