我想在用户上传媒体文件时调用外部API。上传的媒体也将被发送到API。
WordPress中我可以为此目的修改哪些代码?
答案 0 :(得分:2)
当您从WordPress管理信息中心上传媒体时,会为用户指定的每个文件调用wp_handle_upload
一次。 wp_handle_upload_prefilter
是由wp_handle_upload函数调用的管理过滤器。单个参数$ file表示$_FILES
数组的单个元素。 wp_handle_upload_prefilter
为您提供了在文件移动到最终位置之前检查或更改文件名的机会。
add_filter('wp_handle_upload_prefilter', 'custom_upload_filter' );
function custom_upload_filter( $file ){
//call your api here
$file['name'] = 'wordpress-is-awesome-' . $file['name'];
return $file;
}
使用此功能,结合upload_dir,您可以根据上传的文件动态确定要上传的目录。 check link here或stack site