wpcf7_is_file_path_in_content_dir()
Verifies that a given file path is under the directories that WordPress manages for user contents.
Returns false if the file at the given path does not exist yet.
Хуков нет.
Возвращает
bool. True if the path is under the content directories, false otherwise.
Использование
wpcf7_is_file_path_in_content_dir( $path );
- $path(строка) (обязательный)
- A file path.
Код wpcf7_is_file_path_in_content_dir() wpcf7 is file path in content dir CF7 6.1.7
function wpcf7_is_file_path_in_content_dir( $path ) {
if ( ! is_string( $path ) or '' === $path ) {
return false;
}
$callback = static function ( $path, $dir ) {
if ( $real_path = realpath( $path ) ) {
$path = $real_path;
} else {
return false;
}
if ( $real_dir = realpath( $dir ) ) {
$dir = trailingslashit( $real_dir );
} else {
return false;
}
return str_starts_with(
wp_normalize_path( $path ),
wp_normalize_path( $dir )
);
};
if (
call_user_func( $callback, $path, WP_CONTENT_DIR )
) {
return true;
}
if (
defined( 'UPLOADS' ) and
call_user_func( $callback, $path, ABSPATH . UPLOADS )
) {
return true;
}
if (
defined( 'WP_TEMP_DIR' ) and
call_user_func( $callback, $path, WP_TEMP_DIR )
) {
return true;
}
return false;
}