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

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Здравствуйте!

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

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Код: php-brief
<?php
$app = JFactory::getApplication();
$option = $app->input->getCmd('option', '');
$view = $app->input->getCmd('view', '');
$id = $app->input->getCmd('id', '');
/* Так с привязкой к конкретным категориям, числа номера категорий
$catid = array(1, 5, 7);
if($option == 'com_content' && $view =='category' && in_array($id, $catid)): ?> */
if($option == 'com_content' && $view =='category'): ?>
<jdoc:include type="modules" name="mapa_yandex"   />
<?php endif; ?>
Несколько модулей в 1 статье
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
Воспользоваться advanced module manager и привязать модуль к категориям, а сам модуль вывести в любой позиции, которая ниже вывода категорий.
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Подскажите, этот код прямо в статью вставлять? или куда? Дело в том, что мне надо отобразить карты именно так, чтобы они были ниже подкатегорий.
Вот сайт: http://morekurorta.ru/catalogs/category/anapa
Видите, что карты сначала, а потом список подкатегорий. Мне надо поменять местами
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Воспользоваться advanced module manager и привязать модуль к категориям, а сам модуль вывести в любой позиции, которая ниже вывода категорий.

Код карты вставлен в модуль Flexi Custom Code, и этот модуль вывожу в позиции content   
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
zeus07 Код  можете вставлять в шаблон, где находятся вывод других модулей после строк
<jdoc:include type="component" />
... сюда вставлять
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Спасибо, буду пробовать
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Пытался использовать advanced module manager, но проблема в том, что выводит модуль на всех страницах каталога, даже на титульной, хотя указываю только 1 категорию.

Хотел спросить по коду, который изначально мне написали.
$catid = array(1, 5, 7);
if($option == 'com_content' && $view =='category' && in_array($id, $catid)): ?>  - эти сторки таки должны быть, или их надо раскомментировать?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
эти строки предназначены если вы собираетесь привязываться к определенным категориям (здесь к 1, 5 и7)
Нужна привязка, раскомментируй их и закомментируй
//if($option == 'com_content' && $view =='category'): ?>
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Так, понял. А если мне необходимо примерно по 1 модулю вставить в каждую из 5 категорий, мне код полностью дублировать для вставки в другую категорию? Просто карта для каждой категории своя
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
<jdoc:include type="modules" name="mapa_yandex<?php echo $id; ?>"   />
Карты должны быть опубликованы в позициях  mapa_yandex1,  mapa_yandex5 и  mapa_yandex7
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Вроде дошло, спасибо, буду разбираться
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Сделал, как вы написали, но что-то не хочет отображается. Я забыл упомянуть, что каталог сделан на основе JBZoo
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
Сделал, как вы написали, но что-то не хочет отображается. Я забыл упомянуть, что каталог сделан на основе JBZoo
Конечно работать не будет, если в коде привязка к com_content
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
Ладно, поржали немного и хватит, а теперь работающий вариант:
Во первых править нужно шаблон категории вашего приложения, вот в него между выводом категорий и айтемов вставляем:
Код: php
jimport( 'joomla.application.module.helper' );
            $position    = 'yandexmap';
$modules = JModuleHelper::getModules( $position );
$modulehtml = '';
$attribs['style'] = 'xhtml';

foreach($modules as $module) {
$modulehtml .= JModuleHelper::renderModule($module, $attribs);
}

// Add placholder code for onModuleRender search/replace
$modulehtml .= '<!-- '.$position. ' -->';
echo $modulehtml;
Если нужна привязка к категориям, позицию указываете как 'yandexmap-'.$this->category->id;
далее для модуля указываете позицию как yandexmap или yandexmap-12, где 12 номер категории.
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Спасибо, попробую этот вариант
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Не выводится что-то...
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
Не выводится что-то...
Это не ответ.
Куда вставляли с прописыванием путей, как подключали модули. И ошибки при включенном отображении ошибок на максимальный уровень
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Код вставлял в /media/zoo/applications/jbuniversal/templates/catalog/category.php
Вот листинг файла:
Код
<?php
/**
 * JBZoo is universal CCK based Joomla! CMS and YooTheme Zoo component
 * @category   JBZoo
 * @author     smet.denis <admin@joomla-book.ru>
 * @copyright  Copyright (c) 2009-2012, Joomla-book.ru
 * @license    http://joomla-book.ru/info/disclaimer
 * @link       http://joomla-book.ru/projects/jbzoo JBZoo project page
 */
defined('_JEXEC') or die('Restricted access');

$this->app->jbdebug->mark('template::category::start');

$this->app->jblayout->setView($this);
$currentView = $this->app->jbrequest->get('view', 'category');

if ($currentView == 'frontpage') {
    $category = $this->application;
} else {
    $category = $this->category;
}

if (!$this->app->jbcache->start($this->params->get('config.lastmodified'))) {
    $this->app->jbwrapper->start();

    // category render
    echo $this->app->jblayout->render($currentView, $category);

    // alphaindex render
    if ($this->params->get('template.show_alpha_index', 0)) {
        echo $this->app->jblayout->render('alphaindex', $this->alpha_index);
    }

    // subcategories render
    $categories = $this->category->getChildren();
    if ($this->params->get('template.subcategory_show', 1) && count($categories)) {
        echo $this->app->jblayout->render('subcategories', $categories);
    }


jimport( 'joomla.application.module.helper' );
            $position    = 'yandexmap'.$this->category->id;;
$modules = JModuleHelper::getModules( $position );
$modulehtml = '';
$attribs['style'] = 'xhtml';
 
foreach($modules as $module) {
$modulehtml .= JModuleHelper::renderModule($module, $attribs);
}
 
// Add placholder code for onModuleRender search/replace
$modulehtml .= '<!-- '.$position. ' -->';
echo $modulehtml;

    // category items render
    if ($this->params->get('config.items_show', 1) && count($this->items)) {

        if ($this->params->get('config.show_feed_link', 1) && $currentView == 'category') {
            $link = $this->params->get('config.alternate_feed_link');
            if (!$link) {
                $link = $this->app->route->feed($this->category, 'rss');
            }
            $link = JRoute::_($link);

            echo '<a class="rsslink" target="_blank" href="' . $link . '" title="' . JText::_('RSS feed'). '">' .
                JText::_('RSS feed'). '</a>';

            echo '<div class="clear clr"></div>';
        }

        echo $this->app->jblayout->render('items', $this->items);

    } else {
        echo $this->app->jblayout->render('items_empty', $category);
    }

    // pagination render
    if ($this->params->get('template.item_pagination', 1)) {
        echo $this->app->jblayout->render('pagination', $this->pagination, array('link' => $this->pagination_link));
    }

    $this->app->jbwrapper->end();
    $this->app->jbcache->stop();
}

$this->app->jbdebug->mark('template::category::finish');

В index.php прописал : <jdoc:include type="modules" name="yandexmap" style="xhtml" />

Также прописал позицию для каждой категории в templateDetails.xml
Нужные модули поставил в эти позиции
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
В index.php прописал : <jdoc:include type="modules" name="yandexmap" style="xhtml" />
Также прописал позицию для каждой категории в templateDetails.xml
1-й вопрос зачем?
Цитировать
$position    = 'yandexmap'.$this->category->id;;
2-й - я не вижу ошибок, которые появились у вас на сайте, т.к. вижу их в коде: $position    = 'yandexmap'.$this->category->id; (в конце только одна точка с запятой).
Цитировать
Нужные модули поставил в эти позиции
3-й  - какие?
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
1. <jdoc:include type="modules" name="yandexmap" style="xhtml" />  необходимо убрать?
2. Поправил
3. Код карты у меня вставлен в модуль Flexi Custom Code, его поставил в позицию yandexmap-1

Может конечно что-то неверно сделал...Поправьте пожалуйста, что я неверно сделал?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Модуль ZOO Category - как сделать выпадающим списком?

Автор tsg

Ответов: 33
Просмотров: 13134
Последний ответ 05.02.2017, 15:41:38
от newvideo
МОДУЛЬ поиска для zoo. Существует?

Автор 7Rei

Ответов: 32
Просмотров: 15460
Последний ответ 07.01.2017, 20:32:50
от newvideo
[Элемент] archiv - перенос элемента в архивную категорию по окончанию публикации( и ее продление )

Автор likrion

Ответов: 37
Просмотров: 6575
Последний ответ 22.10.2015, 08:13:12
от nick71
Модуль категорий + вывод items (материалов)

Автор Efanych

Ответов: 0
Просмотров: 1746
Последний ответ 14.04.2014, 17:13:27
от Efanych
Вставить категории ZOO каталога в текст статьи

Автор lexx74

Ответов: 1
Просмотров: 1142
Последний ответ 09.10.2013, 15:46:21
от Efanych