Новости Joomla

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

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

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

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

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

🏆 Открыто голосование за Joomla в премии CMS Critic People’s Choice Awards 2025

🏆 Открыто голосование за Joomla в  премии CMS Critic People’s Choice Awards 2025

🗓 Голосование продлится до 27 февраля 2026 года.

👩‍💻 Проголосовать! 👩‍💻

Номинации, в которых можно проголосовать за Joomla:
⭐️ Best Free CMS
⭐️ Best Open Source CMS
⭐️ Best Enterprise CMS

Также в номинации Best e-Commerce Solution участвуют компоненты интернет-магазинов для Joomla:
⭐️ HikaShop
⭐️ Virtuemart

В номинации Best Website Builder оказались:
⭐️ YooTheme
⭐️ SP Page Builder

Что такое CMS Critic Awards?
С 2012 года премия CMS Critic Awards занимает особое место в сообществе систем управления контентом (CMS). Это единственный в своем роде сайт, который составляет рейтинг системы управления контентом и связанных с ними решений на рынке — от малого до крупного и подчеркивает их инновации и услуги.

Каждый год награда CMS Critic Awards присуждается одному победителю в различных отраслевых категориях, таких как: «Лучшая облачная CMS», «Лучший DXP», «Лучшая Headless CMS и других. Затем результаты оглашаются через СМИ вместе с выбором редакции CMS Critic.
В этом году премия вернулась к своим традициям и только TOP-5 движков по количеству номинаций попали в 2-й этап - голосование.

@joomlafeed

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

iT)ZevS(

  • Захожу иногда
  • 177
  • 31 / 2
Jcomments + Sobi2
« : 17.12.2008, 10:04:10 »
Дано: Есть каталог Соби2 и интегрированный в него jcomments.
Задача: убрать автопубликацию только у одного элемента каталога (при включенной глобальной автопубликации) и включить для него уведомления о новых каментах.

Я так понимаю стандартным функционалом я это не реализую, но мне походит вариант покопаться в сорцах и проставить где надо условие проверки.
Хотелось от Сергея услышать возможно ли это впринципе, а еще лучше если укажешь где именно условие проставить (чтобы не закопаться в сорцах).
Спасибо.
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Re: Jcomments + Sobi2
« Ответ #1 : 17.12.2008, 10:13:52 »
Мне кажется намного проще написать небольшой плагин к JComments, который будет обрабатывать данную ситуацию. И ядро компонента при этом трогать не нужно, и обновляться будет проще, и более корректно с точки зрения компонента.
*

iT)ZevS(

  • Захожу иногда
  • 177
  • 31 / 2
Re: Jcomments + Sobi2
« Ответ #2 : 17.12.2008, 10:16:46 »
дело в том, что я не понимаю логику компонента полностью, т.к. он использует модели 1.5, с которыми я совершенно не знаком.
поэтому написание плагина может быть затруднено. но я попробую.
импульс можешь какой либо дать, в какую сторону смотреть. может есть какой нить плагин где используются нужные мне элементы?
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Re: Jcomments + Sobi2
« Ответ #3 : 17.12.2008, 10:48:03 »
Ну вот что-то типа такого делаем:

[spoiler title=Файл jcomments_sobi2_ext.php]
Код: php
<?php
(defined('_VALID_MOS') OR defined('_JEXEC')) or die('Direct Access to this location is not allowed.');

if (!defined( 'JCOMMENTS_JVERSION' )) { return; }

if (JCOMMENTS_JVERSION == '1.0') {
global $_MAMBOTS;
$_MAMBOTS->registerFunction('onBeforeCommentAdded', 'plgJCommentsSobi2Ext');
} else if (JCOMMENTS_JVERSION == '1.5') {
global $mainframe;
$mainframe->registerEvent('onBeforeCommentAdded', 'plgJCommentsSobi2Ext');
}

function plgJCommentsSobi2Ext( &$comment, &$response, &$allowed )
{
        // проверяем, что добавляется комментарий именно к SOBI2 и объекту с идентификатором 1
        if ($comment->object_group == 'com_sobi2' && $comment->object_id == 1) {
                $config = & JCommentsFactory::getConfig();
                // включаем отправку уведомлений
                $config->set('enable_notification', 1);
                // включаем подписку на комментарии всем группам пользователей
                $config->set('enable_subscribe', 'Unregistered,Registered,Author,Editor,Publisher,Manager,Administrator,Super Administrator');
                // снимаем комментарий с публикации
                $comment->published = 0;
                // разрешаем сохранить
                $allowed = true;
        }
return;
}
?>
[/spoiler]
[spoiler title=Файл jcomments_sobi2_ext.xml (для Joomla 1.0)]
Код: xml
<?xml version="1.0" encoding="iso-8859-1"?>
<mosinstall type="mambot" group="jcomments" version="1.0.0">
<name>jcomments_sobi2_ext</name>
<creationDate>16/12/2008</creationDate>
<author>smart</author>
<copyright>(c) 2008 JoomlaTune.ru</copyright>
<authorEmail>smart@joomlatune.ru</authorEmail>
<authorUrl>http://www.joomlatune.ru</authorUrl>
<version>1.0</version>
<description></description>
<files>
<filename mambot="jcomments_sobi2_ext">jcomments_sobi2_ext.php</filename>
</files>
<params />
</mosinstall>
[/spoiler]
[spoiler title=Файл jcomments_sobi2_ext.xml (для Joomla 1.5)]
Код: xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" group="jcomments" version="1.5.0" method="upgrade">
<name>jcomments_sobi2_ext</name>
<creationDate>16/12/2008</creationDate>
<author>smart</author>
<copyright>(c) 2008 JoomlaTune.ru</copyright>
<authorEmail>smart@joomlatune.ru</authorEmail>
<authorUrl>http://www.joomlatune.ru</authorUrl>
<version>1.0</version>
<description></description>
<files>
<filename plugin="jcomments_sobi2_ext">jcomments_sobi2_ext.php</filename>
</files>
<params />
</install>
[/spoiler]

Запакуй в архив .php и нужный тебе .xml файл, установи и опубликуй. Вот собственно и все :)
« Последнее редактирование: 17.12.2008, 12:38:02 от smart »
*

Aquasonick

  • Захожу иногда
  • 314
  • 1 / 7
  • Пока семь раз отмеришь - другие уж сожрут.
Re: JComments + SOBI2
« Ответ #4 : 25.09.2010, 15:35:26 »
Теперь новая прблема.
как сделать так чтобы коменты отображались снизу а не сверху ))
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Jcomments на странице категории?

Автор romagromov

Ответов: 5
Просмотров: 5231
Последний ответ 12.12.2022, 17:01:38
от sivers
Отображение аватаров из JomSocial в JComments

Автор smart

Ответов: 33
Просмотров: 20499
Последний ответ 20.07.2020, 21:31:50
от darkknight
jComments + AlptaUserPoints Добавить текст в Подробности

Автор Nabla

Ответов: 3
Просмотров: 8107
Последний ответ 22.06.2020, 14:14:08
от Nabla
Интеграция JComments с SP Page Builder

Автор Proaqua

Ответов: 5
Просмотров: 6830
Последний ответ 14.06.2020, 11:53:38
от xpank
Jcomments vs. SP Page Builder

Автор angry_ded_mazay

Ответов: 25
Просмотров: 12602
Последний ответ 14.06.2020, 09:25:28
от faritk