get_upload_dir()

Получает путь к папке для загрузки медиа файла на сервер

Фильтры из функции
upload_dir_sorted_date, upload_dir_origin

Использование

$upload_path = get_upload_dir(); 
print_r($upload_path); 

Результат

Array
(
    [origin_url] => https://site.ru/sys/uploads/2019/10
    [origin] => /var/www/username/data/www/site.ru/sys/uploads
    [path_url] => https://site.ru/sys/uploads
    [path] => /var/www/username/data/www/site.ru/sys/uploads/2019/10
    [dir] => 2019/10
    [error] => 
)

Код функции

function get_upload_dir($dirname = '') 
{
	$is_dir_date = use_filters('upload_dir_sorted_date', true); 
	$path_origin = use_filters('upload_dir_origin', PATH_UPLOADS); 
	$path_upload = (!empty($dirname) ? $dirname : ''); 

	if ($is_dir_date) {
		$path_upload .= date('Y') . '/' . date('m'); 
	}
	
	if ($path_upload) {
		$path_directory = $path_origin . '/' . $path_upload; 
	} else {
		$path_directory = $path_origin; 
	}

	if (!is_dir($path_directory)) {
		if (!dir_uploads_create($path_directory)) {
			$error = 'Error create directory {' . $path_directory . '}'; 
		}
	}

	return array(
		'origin_url' => ds_site_url() . str_replace(ROOTPATH, '', $path_directory), 
		'origin' => $path_origin, 
		'path_url' => ds_site_url() . str_replace(ROOTPATH, '', $path_origin), 
		'path' => $path_directory, 
		'dir' => $path_upload, 
		'error' => (isset($error) ? $error : false), 
	); 
}