Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93
/home/sportsfe.../httpdocs/wp-conte.../plugins/sitepres.../classes/caching
File: class-wpml-cache-directory.php
<?php
[0] Fix | Delete
[1] Fix | Delete
class WPML_Cache_Directory {
[2] Fix | Delete
[3] Fix | Delete
const DIR_PERMISSIONS = 0775;
[4] Fix | Delete
const MAIN_DIRECTORY_NAME = 'wpml';
[5] Fix | Delete
const NOTICE_GROUP = 'wpml-cache-directory';
[6] Fix | Delete
const NOTICE_INVALID_CACHE = 'invalid-cache';
[7] Fix | Delete
private $cache_disabled = false;
[8] Fix | Delete
[9] Fix | Delete
/**
[10] Fix | Delete
* @var WPML_WP_API
[11] Fix | Delete
*/
[12] Fix | Delete
private $wp_api;
[13] Fix | Delete
[14] Fix | Delete
/**
[15] Fix | Delete
* @var WP_Filesystem_Direct
[16] Fix | Delete
*/
[17] Fix | Delete
private $filesystem;
[18] Fix | Delete
[19] Fix | Delete
/**
[20] Fix | Delete
* WPML_Cache_Directory constructor.
[21] Fix | Delete
*
[22] Fix | Delete
* @param WPML_WP_API $wp_api
[23] Fix | Delete
*/
[24] Fix | Delete
public function __construct( WPML_WP_API $wp_api ) {
[25] Fix | Delete
$this->wp_api = $wp_api;
[26] Fix | Delete
$this->filesystem = $wp_api->get_wp_filesystem_direct();
[27] Fix | Delete
}
[28] Fix | Delete
[29] Fix | Delete
/**
[30] Fix | Delete
* @return string
[31] Fix | Delete
*/
[32] Fix | Delete
private function get_main_directory_path() {
[33] Fix | Delete
$main_directory_path = null;
[34] Fix | Delete
$cache_path_root = $this->wp_api->constant( 'WPML_CACHE_PATH_ROOT' );
[35] Fix | Delete
[36] Fix | Delete
if ( $cache_path_root ) {
[37] Fix | Delete
$main_directory_path = trailingslashit( $cache_path_root ) . self::MAIN_DIRECTORY_NAME;
[38] Fix | Delete
return trailingslashit( $main_directory_path );
[39] Fix | Delete
}else {
[40] Fix | Delete
$upload_dir = wp_upload_dir();
[41] Fix | Delete
[42] Fix | Delete
if ( empty( $upload_dir['error'] ) ) {
[43] Fix | Delete
$base_dir = $upload_dir['basedir'];
[44] Fix | Delete
$main_directory_path = trailingslashit( $base_dir ) . 'cache/' . self::MAIN_DIRECTORY_NAME;
[45] Fix | Delete
return trailingslashit( $main_directory_path );
[46] Fix | Delete
}
[47] Fix | Delete
}
[48] Fix | Delete
[49] Fix | Delete
return null;
[50] Fix | Delete
}
[51] Fix | Delete
[52] Fix | Delete
/**
[53] Fix | Delete
* The function `wp_mkdir_p` will create directories recursively
[54] Fix | Delete
*
[55] Fix | Delete
* @param string $absolute_path
[56] Fix | Delete
*
[57] Fix | Delete
* @return string|bool absolute path or false if we can't have a writable and readable directory
[58] Fix | Delete
*/
[59] Fix | Delete
private function maybe_create_directory( $absolute_path ) {
[60] Fix | Delete
$result = true;
[61] Fix | Delete
[62] Fix | Delete
if ( ! $this->filesystem->is_dir( $absolute_path ) ) {
[63] Fix | Delete
$result = wp_mkdir_p( $absolute_path );
[64] Fix | Delete
}
[65] Fix | Delete
[66] Fix | Delete
return $result ? $absolute_path : false;
[67] Fix | Delete
}
[68] Fix | Delete
[69] Fix | Delete
/**
[70] Fix | Delete
* @param string $relative_path
[71] Fix | Delete
*
[72] Fix | Delete
* @return string|bool absolute path or false if we can't have a writable and readable directory
[73] Fix | Delete
*/
[74] Fix | Delete
public function get( $relative_path = '' ) {
[75] Fix | Delete
$absolute_path = false;
[76] Fix | Delete
$main_directory_path = $this->maybe_create_directory( $this->get_main_directory_path() );
[77] Fix | Delete
[78] Fix | Delete
if ( $main_directory_path ) {
[79] Fix | Delete
$absolute_path = trailingslashit( $main_directory_path . ltrim( $relative_path, '/\\' ) );
[80] Fix | Delete
$absolute_path = $this->maybe_create_directory( $absolute_path );
[81] Fix | Delete
}
[82] Fix | Delete
[83] Fix | Delete
return $absolute_path;
[84] Fix | Delete
}
[85] Fix | Delete
[86] Fix | Delete
/**
[87] Fix | Delete
* @param string $relative_path
[88] Fix | Delete
*/
[89] Fix | Delete
public function remove( $relative_path = '' ) {
[90] Fix | Delete
$main_directory_path = $this->get_main_directory_path();
[91] Fix | Delete
if ( $main_directory_path ) {
[92] Fix | Delete
$absolute_path = trailingslashit( $main_directory_path . ltrim( $relative_path, '/\\' ) );
[93] Fix | Delete
$this->filesystem->delete( $absolute_path, true );
[94] Fix | Delete
}
[95] Fix | Delete
}
[96] Fix | Delete
}
[97] Fix | Delete
[98] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function