Добавление фото через телеграм в wordpress

Есть бот, который принимает сначала заголовок, а потом текст новости и отправляет его на сайт wordpress. Бот работает, но есть необходимость добавления фото в новости. Попробовал сделать через gpt, но его правка в коде не дала результата. Сообщение в телеграме отправляю, пробовал png, jpg, heic, но бот не реагирует на это, даже не пишет в логах ничего, будто ничего и не отправил, а реагирует только на текст. Подскажите, кто знает, как добавить рабочую функцию такую?

from telegram import Update, Bot
from telegram.ext import Updater, CommandHandler, MessageHandler, Filters, CallbackContext
import requests

# Настройки
TELEGRAM_TOKEN = 'token'
WP_URL = 'https://site/wp-json/wp/v2/posts'
WP_USER = 'pass'
WP_PASSWORD = 'pass'

# Аутентификация WordPress
def get_wp_token():
    response = requests.post(
        f'https://site/wp-json/jwt-auth/v1/token',
        data={'username': WP_USER, 'password': WP_PASSWORD}
    )
    if response.status_code != 200:
        print("Ошибка аутентификации:", response.json())
        return None
    return response.json().get('token')

# Обработка сообщений
def handle_message(update: Update, context: CallbackContext):
    chat_id = update.message.chat_id
    text = update.message.text
    
    if not context.user_data.get('post_title'):
        # Запоминаем заголовок
        context.user_data['post_title'] = text
        update.message.reply_text('Заголовок получен! Теперь отправьте текст новости.')
    elif not context.user_data.get('post_content'):
        # Запоминаем текст новости
        context.user_data['post_content'] = text
        publish_post(update, context)
    else:
        update.message.reply_text('Вы уже отправили заголовок и текст. Попробуйте заново!')

def publish_post(update: Update, context: CallbackContext):
    token = get_wp_token()
    headers = {'Authorization': f'Bearer {token}'}

    # Отправка поста
    response = requests.post(WP_URL, headers=headers, json={
        'title': context.user_data['post_title'],
        'content': context.user_data['post_content'],
        'status': 'publish',
        'categories': [7]  # Укажи ID категории новостей
    })

    if response.status_code == 201:
        update.message.reply_text('Новость опубликована!')
        context.user_data.clear()  # Очищаем данные после публикации
    else:
        update.message.reply_text('Ошибка публикации. Попробуйте снова.')

# Настройка бота
def main():
    updater = Updater(TELEGRAM_TOKEN, use_context=True)
    dp = updater.dispatcher

    dp.add_handler(MessageHandler(Filters.text, handle_message))
    updater.start_polling()
    updater.idle()

if __name__ == '__main__':
    main()

Ответы (0 шт):