Мне нужно отфильтровать закачки в определенную папку для пользовательского типа поста, называемого «документ», только для PDF-файлов.
Пока что у меня есть:
function custom_upload_directory( $args ) {
$base_directory = '/home/xxx/my_uploadfolder';
$base_url = 'http://xxxx/wp-content/uploads/my_uploadfolder';
$id = $_REQUEST['post_id'];
$parent = get_post( $id )->post_parent;
// Check the post-type of the current post
if( "document" == get_post_type( $id ) || "document" == get_post_type( $parent ) ) {
$args['path'] = $base_directory;
$args['url'] = $base_url;
$args['basedir'] = $base_directory;
$args['baseurl'] = $base_url;
}
return $args;
}
add_filter( 'upload_dir', 'custom_upload_directory' );
Это работает, но с некоторыми проблемами: любой тип файла перенаправляется в my_uploadfolder. Кроме того, я не могу удалить эти файлы из WP admin, как только там. Может кто-нибудь помочь?
источник