Я хочу вызвать внешний API, когда пользователь загружает мультимедийный файл. Загружаемые СМИ будут отправлены и в API.Где код, который загружает носитель в WordPress
Какой код в WordPress, который я мог бы изменить для этой цели?
Я хочу вызвать внешний API, когда пользователь загружает мультимедийный файл. Загружаемые СМИ будут отправлены и в API.Где код, который загружает носитель в WordPress
Какой код в WordPress, который я мог бы изменить для этой цели?
При загрузке медиаданных из панели управления администратора 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
Привет, спасибо за ответ. Но это не сработало, я попытался поместить 'header ('Location: https://google.com');' тоже для тестирования, но он ничего не делает – user
вы можете использовать var_dump ($ file); и поместить код в файл functions.php –
Я попытался добавить это в functions.php 'add_filter ('wp_handle_upload_prefilter', 'custom_upload_filter'); function custom_upload_filter ($ file) { var_dump ($ file); return $ file; } 'но я получил' Ошибка при загрузке. Повторите попытку позже. ' – user
вы можете использовать hook и call api при загрузке носителя .... –