wp_upload_dir как получить только имя директории.

4 апр. 2012 г., 15:19:48
Просмотры: 80.4K
Голосов: 23

Представляю, что для некоторых это может быть просто - но у меня возникли трудности с получением только имени директории загрузок - не полного пути - я продвинулся до этого момента:

$uploads = wp_upload_dir();
$upload_path = $uploads['baseurl']; // теперь как получить только имя директории?

есть у кого-нибудь идеи? спасибо за то, что поделитесь своим опытом...

1
Комментарии

basename($uploads['baseurl']) ?

onetrickpony onetrickpony
4 апр. 2012 г. 16:36:22
Все ответы на вопрос 1
2
35

Вот что возвращает функция:

Array
(
    [path] => C:\development\xampp\htdocs\example.com/content/uploads/2012/04
    [url] => http://example.com/content/uploads/2012/04
    [subdir] => /2012/04
    [basedir] => C:\~\example.com/content/uploads
    [baseurl] => http://example.com/content/uploads
    [error] => 
)

Таким образом, вы можете получить (как отметил @OneTrickPony) имя папки/директории с помощью:

echo wp_basename( $uploads['baseurl'] );

Если вы используете мультисайт и определили константу UPLOADS, то доступ к ней осуществляется через UPLOADS или BLOGUPLOADDIR.

РЕДАКТИРОВАНИЕ

Для мультисайтов вы получите примерно следующее:

Array
(
    [path] => /var/www/example.com/public_html/wp-content/uploads/sites/2/2016/12,
    [url] => http://example.com/wp-content/uploads/sites/2/2016/12,
    [subdir] => /2016/12,
    [basedir] => /var/www/example.com/public_html/wp-content/uploads/sites/2,
    [baseurl] => http://example.com/wp-content/uploads/sites/2,
    [error] => ,
)

Где цифра "2" после sites - это ID блога.

4 апр. 2012 г. 17:04:36
Комментарии
  • спасибо вам обоим. basename и, после некоторых исследований, wp_basename тоже, я полагаю.
orionrush orionrush
4 апр. 2012 г. 19:12:00

wp_basename — это "версия basename() с поддержкой интернационализации (i18n)"

https://codex.wordpress.org/Function_Reference/wp_basename

Chaoley Chaoley
23 авг. 2017 г. 19:33:13