Wordpress将目录上载到外部文件夹或站点的父文件夹。如何?

时间:2013-11-02 18:32:17

标签: php wordpress

我在使用wordpress上传文件夹时遇到问题...我不知道之前是否讨论过它......

我在一个域名下运行三个网站,如

01.mydomain.com
02.mydomain.com
03.mydomain.com

所有这些网站在主域名下都有自己的安装目录,如

mydomain.com/site01
mydomain.com/site02
mydomain.com/site03

现在的问题是......每个站点都将其文件上传到自己的目录中....我希望所有这些文件都上传到主目录中的一个目录中......这是父目录。

mydomain.com/files

这样文件应该在网站的任何地方使用....并且文件的链接将更容易记住......以及其他一些用途....

如果不清楚我很抱歉....如果是的话请告诉我....

1 个答案:

答案 0 :(得分:1)

正如迈克尔建议的那样,我会使用WP的多站点功能。

然后你可以改变常量WP_CONTENT_URL

  

上传网址路径由“upload_url_path”选项设置或设置   通过使用'WP_CONTENT_URL'常量并将'/ uploads'附加到   路径。

您可以在wordpress.org

上详细了解wp_upload_dir

您还可以尝试在此处发布的解决方案:http://wordpress.org/support/topic/change-file-upload-folders-on-wordpress-30-multi-site

  

我挖了几个小时,最后我发现了如何服用   最终控制上传文件夹。

     

每当WP即将保存上传时,它都会运行wp_upload_dir()   函数存储在wp-includes / functions.php中。这个功能提供了一个   过滤器用于更改您喜欢的任何内容 - 包括上传   。目录

     

我用它来为每个用户上传个人文件夹:

add_filter('upload_dir', 'ml_media_upload_dir');

/**
 * Changes the upload directory to what we would like, 
 * instead of what WordPress likes.
 */
function ml_media_upload_dir($upload) {
    global $user_ID;
    if ((int)$user_ID > 0) {
        $upload['subdir'] = "/" . $user_ID;
        $upload['path'] .= $upload['subdir'];
        $upload['url'] .= $upload['subdir'];
    }

    return $upload;
}