wp_upload_dir วิธีรับชื่อไดเรกทอรี


18

ฉันจินตนาการว่านี่จะเป็นเรื่องง่ายสำหรับบางคน - แต่ฉันมีปัญหาในการรับเพียงชื่อไดเรกทอรีของการอัปโหลด - ไม่ใช่เส้นทางแบบเต็ม - ฉันได้รับมาถึงตอนนี้:

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

ใครมีความคิดเห็นบ้าง ขอบคุณที่แบ่งปันประสบการณ์ของคุณ . .


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

คำตอบ:


26

นี่คือสิ่งที่คุณได้รับกลับมาจากฟังก์ชั่น:

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'] );

หากคุณกำลังใช้ MultiSite การและคุณกำหนดไว้อย่างต่อเนื่อง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] => ,
)

ตำแหน่ง "2" หลังจากนั้นsitesคือ ID ของบล็อก


2
- ต้องขอบคุณทั้งคู่ที่นั่น basename และหลังจากการวิจัย wp_basename ด้วยฉันก็คิดอีกครั้ง
orionrush

wp_basename เป็น "รุ่นที่เป็นมิตรของ i18n ของ basename ()" codex.wordpress.org/Function_Reference/wp_basename
Chaoley
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.