问题描述

我想像这样会很轻松,但是我很难得到上传的目录名称 – 而不是完整的路径 – 我已经得到了这么多的结果:

$uploads = wp_upload_dir();
$upload_path = $uploads['baseurl']; // now how to get just the directory name?

有谁有什么想法?感谢您分享您的经验。 。 。

最佳解决方案

这是你从功能中得到的:

Array
(
    [path] => C:developmentxampphtdocsexample.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,则可以从 UPLOADSBLOGUPLOADDIR 访问它。

编辑

对于多元素,你会得到这样的东西:

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] => ,
)

sites 之后的”2″ 是博客的 ID

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。