Функция wp_get_upload_dir()
используется для получения информации о каталоге загрузок в WordPress. Она является облегченной версией функции wp_upload_dir()
, так как не пытается создать директорию загрузок, если таковая не существует. Это делает её полезной для тем, когда вам нужны только данные о каталоге, например, basedir
и baseurl
, без необходимости загружать файлы.
wp_get_upload_dir(): array
Возвращаемое значение
Функция возвращает массив с информацией о каталоге загрузок:
path
— полный путь на сервере до каталога загрузок с учетом года и месяца.url
— URL-адрес каталога загрузок.subdir
— название конечного каталога загрузок.basedir
— путь на сервере до общего каталога загрузок.baseurl
— URL до общего каталога загрузок.error
— если произошла ошибка, значение будетtrue
.
Пример 1: Получение данных о каталоге загрузок
В этом примере мы получим информацию о каталоге загрузок и выведем ее на экран:
$upload_info = wp_get_upload_dir();
print_r($upload_info);
/* Вывод будет:
Array
(
[path] => /home/example.com/public_html/wp-content/uploads/2024/10
[url] => https://example.com/wp-content/uploads/2024/10
[subdir] => /2024/10
[basedir] => /home/example.com/public_html/wp-content/uploads
[baseurl] => https://example.com/wp-content/uploads
[error] =>
)
*/
// Выведем пути
echo $upload_info['basedir']; // /home/example.com/public_html/wp-content/uploads
echo $upload_info['baseurl']; // https://example.com/wp-content/uploads
Пример 2: Работа с мультисайтом
Если ваш WordPress установлен в режиме мультисайта, функция вернет данные для текущего сайта. Вот пример:
$upload_info = wp_get_upload_dir();
print_r($upload_info);
/* Для мультисайта вывод будет похож на:
Array
(
[path] => /var/app/www/wp-content/uploads/sites/3/2024/10
[url] => https://example.com/wp-content/uploads/sites/3/2024/10
[subdir] => /2024/10
[basedir] => /var/app/www/wp-content/uploads/sites/3
[baseurl] => https://example.com/wp-content/uploads/sites/3
[error] =>
)
*/
Пример 3: Проверка наличия ошибок
Вы можете также проверить наличие ошибок при получении данных о каталоге загрузок:
$upload_info = wp_get_upload_dir();
if ( $upload_info['error'] ) {
echo 'Произошла ошибка при получении данных о каталоге загрузок.';
} else {
echo 'Данные о каталоге загрузок успешно получены!';
}
Заключение
Функция wp_get_upload_dir()
является полезным инструментом для получения информации о каталоге загрузок в WordPress. Она облегчает работу с файлами и URL, особенно в контексте тем, где необходимо только извлечение данных, а не загрузка новых файлов. Используя эту функцию, вы можете легко управлять файлами и получать доступ к директориям загрузок.