The closest is the WP Filesystem API, but that’s mainly intended for compatibility purposes, e.g. to enable files to be written when the only access is via FTP and direct filesystem write access is unavailable.
Particularly: https://developer.wordpress.org/reference/classes/wp_filesystem_base/dirlist/
However, if you are not distributing this code and only using it for yourself or known environments, you can use standard PHP APIs.
Note that you will need to perform some recursion to achieve this task, and there are costs to doing this, especially if the filesystem specified for WordPress involves remote requests such as FTP/S3/etc
Related Posts:
- Correct Syntax for uploading files to custom directory in WordPress
- How to change upload directory in wp_handle_upload
- Decrease file size upload in Media
- Change the filename format of saved featured images
- How to register images uploaded via FTP in media library?
- Failed media upload: “The uploaded file was only partially uploaded.”
- Using file_exists to check file in Uploads
- Rename image uploads replacing “width” and “height” in filename with “medium”, “large”, “small”
- Rename image uploads with width in filename
- Modify image while uploading
- Debugging upload problem: What part of WP does actual image-resizing?
- How to upload imagick resource to media in wordpress
- Accessing a random image via ajax
- Make WordPress upload directory outside wordpress root with custom url
- Is it unsafe to put php in the /wp-content/uploads directory?
- Upload images and attachments from frontend form
- WordPress media upload “HTTP error”
- Adding featured image via PHP
- How to enlarge the media file upload size in wordpress admin
- What’s the proper way to use wp_enqueue_script/style?
- File upload, uploads only file name
- Modify Maximum upload file size text
- Adding a querystring to an image URL when clicking ‘insert into post’?
- Use WordPress’s Media Uploader/ Manager in non WordPress php application
- Upload a json file in php [closed]
- Custom image upload
- wp_handle_upload – The uploaded file could not be moved to wp-content/uploads/2012/09
- is it possible to force wordpress to always save thumbnails as ‘jpg’ not ‘png’
- Memory errors with media upload, WordPress can’t use more than 96M (while there’s 512 available!)
- Validate Uploaded Image using WordPress’ Built-in Functions?
- Get most recent media upload
- Convert all images to PNG on file upload
- How to restrict wp generate attachment metadata() to certain intermediate image sizes
- Upload Image in a WordPress page using PHP
- WordPress (3.9.1) MultiSite Permissions. Is chown the answer?
- Accessing site’s root from themes folder
- Using file_get_contents with Gravity Forms uploads folder to create images in the media library returning false
- how to retrieve uploaded url of zip files
- Custom location for attached images
- Using a `Template Parts` folder instead of an `Includes` folder in a Custom WordPress Theme
- Why is $_REQUEST an empty array in admin-ajax.php?
- How to Arrange PHP Files to Allow for Multiple Types of Pages?
- PDF file randomly breaks upon upload
- Image upload via FormData API and AJAX is not working ($_FILES always empty)
- Need help with Google drive API [closed]
- Can’t upload image using media_sideload_image
- Upload file could not be moved to wp-content/uploads
- Enable custom logo upload if logo is not in header
- Attach previously uploaded image to post – current code has unexpected results
- How do I get around “Sorry, this file type is not permitted for security reasons”?
- WordPress function when file is uploaded, deleted or edited
- Can I get an email notification when media is uploaded to the media library?
- Blob file download problem
- zip unzip attachments in wordpress
- Upload multiple files in randomly generated folder using wp_upload_bits
- Can’t upload CSV file to plugin directory using custom upload form in admin panel
- Get uploaded image and attach it to the new post
- How do I increase the upload size only when editing special pages?
- Convert canvas to image and upload image to server
- How to get the filename from file system and create a download link?
- Get URL of Featured Image After wp_insert_post()
- Custom upload folder
- WordPress İmages Upload & Delete Error
- Allow user to Upload image and manipulate it on the frontend
- custom plugin with upload files does not work
- Front end file upload returning wrong attachment url
- Convert all uploaded PNG files to PNG-8 format
- I can’t set image ad fatured programatically
- How can I update WordPress plugins or WordPress itself in all server?
- async upload not working when not logged
- WordPress loading all local images from specific directory?
- Trying to generate a CSS file in wordpress uploads folder
- New user – Create a folder
- Maximum file Upload
- Change upload URL by mime type
- Autoloading Classes in Plugins
- Right path for renaming a file in uploads folder
- WordPress file upload
- Upload images from one server to an other in wordpress
- How do I prevent a folder from reappearing in my home directory?
- wp_delete_attachment not working with multiple values
- Renaming “Expand Details” within “Add Media”
- Save the outputted image into the Media Library, with a different filename and extension
- 403 (Forbidden) delete file image in themer folder
- File path for attachments outside of wp-content/uploads
- Is custom behaviour possible when asynchronously uploading?
- How to resize an image server-side before upload?
- WordPress will suddenly stop saving files uploaded by my code (ran in nopriv ajax)
- Permission functions within wordpress
- Can’t upload files
- WP white screen of death after duping a site that works fine on same server
- Can I have a php site on subdirectory of WordPress?
- How to automatically convert images to WebP on WordPress?
- WordPress directories not writable after PHP version upgrade
- Upload multiple files via ajax from an HTML file input
- get_post_meta returns on side but it doesn’t return on bottom of admin page
- “Unexpected response from server” error when trying to upload any .mp4 file over 100MB
- Changing upload directory temporarily
- Restricting Image Upload Sizes using ‘wp_handle_upload_prefilter’ – Stuck media progress bar when Featured Image?
- Unable to upload media to WordPress