Estou procurando replace a funcionalidade de upload existente para salvar o arquivo em um serviço de armazenamento remoto. O armazenamento remoto possui uma interface HTTP que me permite enviar arquivos e retornar um URL endereçável de volta. O motivo para isso é que o serviço de armazenamento remoto possui grande quantidade de espaço e é replicado automaticamente para alta disponibilidade.
Já percebi como enviar arquivos. No entanto, não tenho certeza de qual gancho / function que devo usar para replace o comportamento existente.
Duas opções:
'wp_handle_upload'
, um filtro fornecido pela function wp_handle_upload()
em wp-admin/includes/file.php
:
apply_filters( 'wp_handle_upload', array( 'file' => $new_file, 'url' => $url, 'type' => $type ), 'upload' )
Substitua o novo URI do arquivo por seu URI remoto.
A function wp_insert_attachment()
em wp-includes/post.php
oferece duas ações:
do_action('edit_attachment', $post_ID); do_action('add_attachment', $post_ID);
Você pode obter os dados de anexos por $post_ID
e alterar qualquer valor aqui.