wp_upload_dir wie man nur den Verzeichnisnamen bekommt.

18

Ich stelle mir vor, dass dies für einige ein Kinderspiel wäre - aber ich habe Schwierigkeiten, nur den Verzeichnisnamen des Uploads zu ermitteln - nicht den vollständigen Pfad - ich bin so weit gekommen:

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

hat jemand irgendwelche ideen? Vielen Dank für Ihre Erfahrung. . .

orionrush
quelle
5
basename($uploads['baseurl'])?
Onetrickpony

Antworten:

26

Das bekommen Sie von der Funktion zurück:

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

So können Sie den (wie bei @OneTrickPony vermerkten) Ordner- / Verzeichnisnamen mit bekommen

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

Wenn Sie Multisite ausführen und die Konstante definiert haben UPLOADS, greifen Sie über UPLOADSoder darauf zu BLOGUPLOADDIR.

BEARBEITEN

Für Multisites erhalten Sie ungefähr Folgendes:

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

Wo die "2" danach sitesist die ID des Blogs

Kaiser
quelle
2
- Danke euch beiden. basename und nach einigem recherchieren würde ich auch mit wp_basename rechnen.
Orionrush
wp_basename ist die "i18n freundliche Version von basename ()" codex.wordpress.org/Function_Reference/wp_basename
Chaoley