WP_Filesystem_Direct::chmod( string $file, int $mode = false, bool $recursive = false )
Changes filesystem permissions
Parameters
- $file
-
(Required) Path to the file.
- $mode
-
(Optional) The permissions as octal number, usually 0644 for files, 0755 for dirs.
Default value: false
- $recursive
-
(Optional) If set True changes file group recursively.
Default value: false
Return
(bool) Returns true on success or false on failure.
Source
File: wp-admin/includes/class-wp-filesystem-direct.php
public function chmod($file, $mode = false, $recursive = false) {
if ( ! $mode ) {
if ( $this->is_file($file) )
$mode = FS_CHMOD_FILE;
elseif ( $this->is_dir($file) )
$mode = FS_CHMOD_DIR;
else
return false;
}
if ( ! $recursive || ! $this->is_dir($file) )
return @chmod($file, $mode);
// Is a directory, and we want recursive
$file = trailingslashit($file);
$filelist = $this->dirlist($file);
foreach ( (array)$filelist as $filename => $filemeta)
$this->chmod($file . $filename, $mode, $recursive);
return true;
}