wp_get_upload_dir()
Получает данные о папке загрузок (upload) в виде массива параметров.
Это точно такая же функция как и wp_upload_dir(), но менее «требовательная к ресурсам» - она не пытается создать папку загрузок, если такой папки нет.
Функцию нужно использовать в темах, когда нужны только данные: basedir
и baseurl
- т.е. когда не нужно загружать файл, а нужно только получить данные каталога загрузок.
Мультисайт
Для мультисайта функция вернет данные папки загрузок текущего сайта. Например:
[basedir] => /var/app/www/wp-content/uploads/sites/2 [baseurl] => https://example.com/wp-content/uploads/sites/2
Подробнее об этой функции читайте в описании wp_upload_dir().
Папка загрузок обычно называется upload
и находится в папке контента wp-content.
Хуков нет.
Возвращает
Массив
. Массив данных о каталоге загрузок:
array ( 'path' => '/home/example.com/public_html/wp-content/uploads/2016/04', 'url' => 'http://example.com/wp-content/uploads/2016/04', 'subdir' => '/2016/04', 'basedir' => '/home/example.com/public_html/wp-content/uploads', 'baseurl' => 'http://example.com/wp-content/uploads', 'error' => false, )
где
-
path
- путь на сервере до каталога загрузок с учетом года и месяца, если соответствующая опция включена в админке. -
url
- УРЛ каталога загрузок с учетом года и месяца, если соответствующая опция включена в админке. -
subdir
- название конечного каталога загрузок внутри wp-content/uploads. -
basedir
- путь на сервере до общего каталога загрузок. -
baseurl
- УРЛ до общего каталога загрузок. error
- в случае ошибки при получении данных элемент массива error будет равен true.
Использование
$upload_dir = wp_get_upload_dir();
Примеры
#1 Получим данные каталога загрузок
$dir = wp_get_upload_dir(); print_r($dir); /* Выведет Array ( [path] => /home/example.com/public_html/wp-content/uploads/2016/04 [url] => http://example.com/wp-content/uploads/2016/04 [subdir] => /2016/04 [basedir] => /home/example.com/public_html/wp-content/uploads [baseurl] => http://example.com/wp-content/uploads [error] => ) */ // Выведем данные echo $dir['basedir']; // /home/example.com/public_html/wp-content/uploads echo $dir['baseurl']; // http://example.com/wp-content/uploads
Для мультисайта данные будут такие:
Array ( [path] => /var/app/www/wp-content/uploads/sites/2/2023/09 [url] => http://example.com/wp-content/uploads/sites/2/2023/09 [subdir] => /2023/09 [basedir] => /var/app/www/wp-content/uploads/sites/2 [baseurl] => http://example.com/wp-content/uploads/sites/2 [error] => )
#2 Еще пример с папкой загрузок
Смотрите в описании wp_upload_dir().
Заметки
- Смотрите: wp_upload_dir()
Список изменений
С версии 4.5.0 | Введена. |
Код wp_get_upload_dir() wp get upload dir WP 6.6.2
function wp_get_upload_dir() { return wp_upload_dir( null, false ); }