wp_upload_dir como obter apenas o nome do diretório.

18

Eu imagino que isso seria muito fácil para alguns - mas estou tendo dificuldade em obter apenas o nome do diretório do upload - não o caminho completo - cheguei até aqui:

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

Alguém tem alguma ideia? obrigado por compartilhar sua experiência. . .

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

Respostas:

26

É isso que você recupera da função:

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

Assim, você pode obter o nome da pasta / diretório (como @OneTrickPony apontou) com

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

Se você estiver executando vários sites e definiu a constante UPLOADS, acesse-a de UPLOADSou BLOGUPLOADDIR.

EDITAR

Para multisites, você obteria algo como isto:

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

Onde o "2" depois sitesé o ID do blog

kaiser
fonte
2
- obrigado a vocês dois lá. basename e depois de alguma pesquisa wp_basename também eu acho.
Orionrush
wp_basename é a "versão amigável i18n de basename ()" codex.wordpress.org/Function_Reference/wp_basename
Chaoley