Новости Joomla

👩‍💻 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.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

В процессе работы с Joomla бывает необходимо работать с пользовательским интерфейсом более тонко, чем обычно. Все формы Joomla состоят из стандартных полей, содержанием, стилем отображения, состоянием (включено/выключено, доступно для редактирования или нет и т.д.) можно управлять с помощью плагинов. Да и для нестандартных проектов хорошей практикой является создание одного системного или нескольких плагинов групп "под проект", в которых храниться весь "нестандарт".

В этой статье описаны все триггеры, которые вызываются через Event Dispatcher из administrator/components/com_fields/src/Helper/FieldsHelper.php, с привязкой к жизненному циклу (порядку этапов работы запроса), аргументам, изменяемым данным и дальнейшему распространению по Joomla. Это поможет вам работать с Joomla свободнее и не опасаясь при этом потерять изменения при очередном обновлении движка.

Подходы, описанные в статье, полезны в тех случаях, когда вы работаете с данными в com_fields - механизме создания и редактирования пользовательских полей ядра Joomla и при использовании FieldsHelper. Многие сторонние компоненты не используют эту возможность, поэтому данная статья будет полезна лишь частично.

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

kaprikorn

  • Осваиваюсь на форуме
  • 39
  • 4 / 0
  • www.cleverscript.ru
Привет Джумляне, хочу попросить у вас совет по ходу разработки плагина (Joomla 1.5x) для добавления дополнительной иконки в статьях (компонент com_content) - этот плагин вставляет еще одну иконку с помощью mootools в DOM структуру страницы с статьей (рядом с иконками PDF E-mail Edit).

Суть проблемы:

При нажатии на любую из этих иконок открывается Pop_up окно в который вставляется ссылка, по которой в это окно загружается содержимое страницы.
Покапавшись в компоненте com_content в папке components\com_content\helpers\ я обнаружил файл icon.php в котором содержится класс JHTMLIcon формирующий три стандартные иконки и ссылку для них, вот так выглядит метод (функция) формирующая иконку PDF:

Код: php
function pdf($article, $params, $access, $attribs = array())
{
$url  = 'index.php?view=article';
$url .=  @$article->catslug ? '&catid='.$article->catslug : '';
$url .= '&id='.$article->slug.'&format=pdf';

$status = 'status=no,toolbar=no,scrollbars=yes,titlebar=no,menubar=no,resizable=yes,width=640,height=480,directories=no,location=no';

// checks template image directory for image, if non found default are loaded
if ($params->get('show_icons')) {
$text = JHTML::_('image.site', 'pdf_button.png', '/images/M_images/', NULL, NULL, JText::_('PDF'));
} else {
$text = JText::_('PDF').' ';
}

$attribs['title'] = JText::_( 'PDF' );
$attribs['onclick'] = "window.open(this.href,'win2','".$status."'); return false;";
$attribs['rel']     = 'nofollow';

return JHTML::_('link', JRoute::_($url), $text, $attribs);
}

По этой же аналогии я пытаюсь сформировать свой класс в плагине который будет также формировать ссылку с id статьи (это главное что мне нужно), а затем эту ссылку я вставляю в открывающееся Pop_up окно:

Вот как я пишу:

Код: php
jimport('joomla.plugin.plugin');

$host_name = $_SERVER['SERVER_NAME'];//We receive a server name

class plgContentPdf2emailicon extends JPlugin
{
    function onPrepareContent(&$article, &$params, $limitstart){
    global $host_name;//Obyavlaem peremenuyu kak globalnuyu
    //formiruem ssulku
    $url  = 'http://'.$host_name.'/index.php?option=com_pdf2email&view=pdf2email&id='.$article->slug.'&tmpl=component';
    //vozvraschaem resultat
    return ('url');

    }
}
    $class = new plgContentPdf2emailicon();
    $func = 'onPrepareContent';
    $link = $class->$func;
?>

<script type="text/javascript">
window.addEvent('domready', function() {

        var LINK = new Element('a', {
                'class' : 'My_link',
                'rel' : 'nofollow',
                'href' : '#',
                'events' : {
                    'click': function(){
                        window.open('<?php echo $link; ?>','win2','width=435,height=480,menubar=yes,resizable=yes'); return false;
                     }
                 }
         });

Тоесть что я здеь делаю... Я создаю подкласс plgContentPdf2emailicon класса JPlugin в котором создаю слушателя (функию) которая получает параметры (&$article, &$params, $limitstart) первый из которых я использую для получения id статьи, также как и в приведенном выше примере (icon.php) - &id='.$article->slug.

Затем делаю вызов функции через обрашение к классу и заношу результат в переменную $link, которую затем вывожу через echo как ссылку в Pop_up окне:

Код: JavaScript
'events' : {
                    'click': function(){
                        window.open('<?php echo $link; ?>','win2','width=435,height=480,menubar=yes,resizable=yes'); return false;
                     }
                 }

В чем проблема: когда плагин установлен и опубликован, выводится сообщение ссылающееся на ошибку в файле с классом JPlugin, с тем что нехватает какогото передаваемого аргумента для функции конструктора.
Помогите разобратся в этом непростом деле зарание пасибо *DRINK*

P.S Текст ошибки:

Цитировать
Warning: Missing argument 1 for JPlugin::__construct(), called in /home/u191499/joomla.ru/www/plugins/content/icon_trigger.php on line 19 and defined in /home/u191499/joomla.ru/www/libraries/joomla/plugin/plugin.php on line 75

Fatal error: Call to a member function attach() on a non-object in /home/u191499/joomla.ru/www/libraries/joomla/base/observer.php on line 42
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Эффект добавления в корзину

Автор Sanyo

Ответов: 114
Просмотров: 41013
Последний ответ 08.11.2014, 22:09:13
от site-logic
Переход после добавления товара на главную страницу

Автор Александр216

Ответов: 0
Просмотров: 1528
Последний ответ 27.07.2013, 01:29:49
от Александр216
[Download] Плагин vmproductsnapshots_1.1.3.j15. Добавлен вывод свойств и функционал добавления в кор

Автор beagler

Ответов: 28
Просмотров: 17545
Последний ответ 07.06.2012, 11:06:09
от plk500
конфликт иконки "Скидка!" на товарах

Автор evsmusic

Ответов: 0
Просмотров: 3650
Последний ответ 28.12.2011, 14:58:35
от evsmusic
Редактирование и Добавления "Мнения покупателей"

Автор warlocksp

Ответов: 1
Просмотров: 1740
Последний ответ 30.11.2011, 17:27:08
от AnnSwamp