Скачать установщик
  • Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.
  • Telegram: @radicalmart
    • Вход
    • Регистрация

    Системный плагин ТелеПост. Документация.
    Системный плагин ТелеПост

    Событие onTelepostArticleBeforeSave

    Плагин ТелеПост генерирует событие onTelepostArticleBeforeSave перед сохранением материала Joomla.

    Событие вызывается один раз для каждого успешно обработанного поста и позволяет изменить данные статьи до их сохранения в базе данных.

    Событие реализовано через PSR-14 и передаёт объект Event со следующими аргументами:

    • data — объект данных статьи (передаётся по ссылке). Свойства соответствуют полям таблицы #__content, а также ключам images, urls, tags, com_fields.
    • post — исходный массив channel_post, полученный от Telegram API без изменений.

    Пример обработчика события:

    
    use Joomla\Event\Event;
    
    public function onTelepostArticleBeforeSave(Event $event): void
    {
        $data = $event->getArgument('data');
        $post = $event->getArgument('post');
    
        // Пример: изменить заголовок
        $data->title = '[Telegram] ' . $data->title;
    }
    

    Примечание: поле introtext может содержать HTML-разметку (абзацы, ссылки), если в настройках плагина включено автоформатирование.


    Использование TelepostHelper для скачивания файлов

    В основной поставке плагина доступен хелпер Joomla\Plugin\System\Telepost\Helper\TelepostHelper, предназначенный для безопасного скачивания файлов из Telegram.

    Хелпер автоматически:

    • проверяет тип файла;
    • очищает имя файла;
    • предотвращает повторную загрузку одинаковых файлов;
    • работает в соответствии с настройками основного плагина.

    Пример использования в плагине-парсере:

    
    use Joomla\Plugin\System\Telepost\Helper\TelepostHelper;
    
    // Получение параметров основного плагина
    $telepostParams = ...;
    $botToken = $telepostParams->get('bot_token');
    $imgPath  = $telepostParams->get('img_path');
    
    // Скачивание файла
    $filePath = TelepostHelper::downloadTelegramFile($fileId, $botToken, $imgPath);
    

    Плагин-пример

    Для упрощения разработки собственных парсеров доступен плагин-пример, демонстрирующий:

    1. Модификацию данных на основе исходного контента Telegram.
    2. Модификацию уже обработанных данных статьи.

    Плагин-пример доступен в репозитории проекта на GitHub.

    SovMart – место, где создаются и продаются расширения для Joomla!

    Российский дата-центр, сервера в аренду:
    FirstVDS

    Контакты

    Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.
    © Маркетплейс SovMart. Все права защищены.