WP_Filesystem_SSH2::delete( string $file, bool $recursive = false, string|false $type = false )

Deletes a file or directory.

Parameters

$file

(string) (Required) Path to the file or directory.

$recursive

(bool) (Optional) If set to true, deletes files and folders recursively.

Default value: false

$type

(string|false) (Optional) Type of resource. 'f' for file, 'd' for directory.

Default value: false

Return

(bool) True on success, false on failure.

Source

File: wp-admin/includes/class-wp-filesystem-ssh2.php

public function delete( $file, $recursive = false, $type = false ) {
		if ( 'f' === $type || $this->is_file( $file ) ) {
			return ssh2_sftp_unlink( $this->sftp_link, $file );
		}

		if ( ! $recursive ) {
			return ssh2_sftp_rmdir( $this->sftp_link, $file );
		}

		$filelist = $this->dirlist( $file );

		if ( is_array( $filelist ) ) {
			foreach ( $filelist as $filename => $fileinfo ) {
				$this->delete( $file . '/' . $filename, $recursive, $fileinfo['type'] );
			}
		}

		return ssh2_sftp_rmdir( $this->sftp_link, $file );
	}

Changelog

Version Description
2.7.0 Introduced.

© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/wp_filesystem_ssh2/delete