wp_upload_dir làm thế nào để chỉ lấy tên thư mục.


18

Tôi tưởng tượng rằng điều này sẽ dễ dàng đối với một số người - nhưng tôi gặp khó khăn khi chỉ nhận được tên thư mục tải lên - không phải là đường dẫn đầy đủ - tôi đã đi xa đến mức này:

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

Còn ai có ý tưởng nào không? cảm ơn vì đã chia sẽ kinh nghiệm của bạn. . .


5
basename($uploads['baseurl'])?
onetrickpony

Câu trả lời:


26

Đây là những gì bạn nhận được từ chức năng:

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

Vì vậy, bạn có thể lấy (như @OneTrickPony chỉ ra), tên thư mục / thư mục với

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

Nếu bạn đang chạy multisite và bạn đã xác định hằng số UPLOADS, thì bạn truy cập nó từ UPLOADShoặc BLOGUPLOADDIR.

CHỈNH SỬA

Đối với nhiều người, bạn sẽ nhận được một cái gì đó như thế này:

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

Trong đó "2" sau siteslà ID của blog


2
- cảm ơn cả hai bạn ở đó. tên cơ sở và sau một số nghiên cứu wp_basename tôi cũng nghĩ.
orionrush

wp_basename là "phiên bản thân thiện của i18n của tên cơ sở ()" codex.wordpress.org/Function_Reference/wp_basename
Chaoley
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.