wp_mkdir_p()
Recursive directory creation based on full path.
Will attempt to set permissions on folders.
1 time — 0.0002389 sec (fast) | 50000 times — 0.16 sec (very fast) | PHP 7.3.3, WP 5.2.3
No Hooks.
Return
true|false
. Whether the path was created. True if path already exists.
Usage
wp_mkdir_p( $target );
- $target(string) (required)
- Full path to attempt to create.
Examples
#1 Directory Creation Demo
Suppose we need to create a nested directories:
if ( wp_mkdir_p( 'a/really/deep/sub/directory' ) ){ echo 'Directory created!'; }
#2 Creating a directory inside /uploads
This example shows how to create a new folder in the /uploads directory, while activating the plugin.
It can be useful when the plugin has file import functions or the ability to upload files and you want to save all files to a specific folder.
function myplugin_activate() { $upload = wp_upload_dir(); $upload_dir = $upload['basedir'] . '/mypluginfiles'; if ( ! wp_mkdir_p( $upload_dir ) ){ echo "Failed to create mypluginfiles directory"; } } register_activation_hook( __FILE__, 'myplugin_activate' );
Changelog
Since 2.0.1 | Introduced. |