Wordpress:为自定义插件指定上传文件夹

时间:2013-11-23 01:15:10

标签: php wordpress file-upload plugins avatar

我使用Simple Local Avatars plugins允许用户在我的Wordpress网站上添加论坛图片。

默认上传路径为www.site.com/wp-content/uploads。然而,由于我将拥有100-1000个用户,并且这个插件为每个头像创建了5个文件,它将完全弄乱上传文件夹。

我希望这些图片可以在www.site.com/wp-content/uploads/avatars/上传。

这个插件似乎走了路径:

$upload_path = wp_upload_dir();

我尝试了几个黑客,如:

 $upload_path = wp_upload_dir();
 $upload_path['baseurl'] .= '/avatars';
 $upload_path['basedir'] .= '/avatars';

由于它(我不知道为什么)将图片二进制值包含在路径...

solution

add_filter('upload_dir', 'my_upload_dir');
$upload = wp_upload_dir();
remove_filter('upload_dir', 'my_upload_dir');

funcion my_upload_dir($upload) {
    $upload['subdir']   = '/sub-dir-to-use' . $upload['subdir'];
    $upload['path']     = $upload['basedir'] . $upload['subdir'];
    $upload['url']      = $upload['baseurl'] . $upload['subdir'];
    return $upload;
}

这不会影响实际的上传文件夹。

插件作者似乎也不想添加此功能,请参阅this support topic

任何帮助都将不胜感激。

由于

1 个答案:

答案 0 :(得分:0)

我知道这有点晚了,但您必须提供pathbasepath的绝对路径。