Intereting Posts
Создание плагина, на котором будет отображаться текст на каждой странице Несколько циклов wp_query, показывающих первые 5 сообщений на всех страницах вместо старых сообщений Как получить значения выбора, созданные плагином ACF в wordpress обновить функцию поиска по умолчанию и получить записи postmeta Превысил предел виртуальной памяти Данные, вставленные с помощью вставки wpdb, отличаются от данных pressnt в базе данных. Возврат запланированных сообщений с помощью WP REST API Ссылка на канал Youtube на сайте WordPress Только бэкэнд галереи Как я могу фильтровать сообщения по тегу на лету Постоянная ссылка – Смешные и странные Что является правильным способом для SAnitize значение флажка, отправленное в базу данных Выбранный термин таксономия cookie Какой фильтр / действие можно использовать для добавления нескольких ссылок на страницу комментариев администратора? Пользовательская надпись на слайдере WP Nivo

Загрузка файла в удаленное хранилище

Я хочу перезаписать существующие функции загрузки, чтобы сохранить файл в службе удаленного хранения. У удаленного хранилища есть HTTP-интерфейс, который позволяет мне публиковать файл и возвращать адресный URL-адрес обратно. Причиной этого является то, что служба удаленного хранения имеет большой объем пространства и автоматически реплицируется для обеспечения высокой доступности.

Я уже понял, как отправлять файлы. Тем не менее, я не уверен, какой крючок / функция я должен использовать, чтобы перезаписать существующее поведение.

Solutions Collecting From Web of "Загрузка файла в удаленное хранилище"

Два варианта:

  1. 'wp_handle_upload' в 'wp_handle_upload' , фильтр, предоставляемый функцией wp_handle_upload() в wp-admin/includes/file.php :

     apply_filters( 'wp_handle_upload', array( 'file' => $new_file, 'url' => $url, 'type' => $type ), 'upload' ) 

    Замените URI нового файла на свой удаленный URI.

  2. Функция wp_insert_attachment() в wp-includes/post.php предлагает два действия:

     do_action('edit_attachment', $post_ID); do_action('add_attachment', $post_ID); 

    Вы можете получить данные вложения $post_ID и изменить любое значение здесь.