修改WordPress图片上传目录至public_html指定路径的问题
修改WordPress自定义上传路径的正确方法
问题根源
直接修改wp-options.php会触发WordPress的路径解析逻辑错误——它默认将填入的路径识别为站点根目录的相对路径,所以才会在站点文件夹下生成public_html子目录,而非指向服务器的绝对路径/home/public_html/images。
正确配置方案
方法一:通过wp-config.php设置(推荐)
在站点根目录的wp-config.php文件末尾添加以下代码:
// 指定服务器绝对上传路径 define('UPLOADS', '/home/public_html/images'); // 对应已确认的正确访问URL,替换为你的实际域名 define('WP_CONTENT_URL', 'http://你的域名/images');
注意:配置完成后,不要在后台「媒体设置」中修改上传路径,否则会覆盖此配置。
方法二:通过主题钩子修改
若不想修改核心配置文件,可在当前主题的functions.php中添加以下代码:
function custom_upload_dir($dirs) { $target_dir = '/home/public_html/images'; $target_url = 'http://你的域名/images'; // 替换为已确认的正确URL $dirs['path'] = $target_dir; $dirs['url'] = $target_url; $dirs['subdir'] = ''; $dirs['basedir'] = $target_dir; $dirs['baseurl'] = $target_url; return $dirs; } add_filter('upload_dir', 'custom_upload_dir');
验证步骤
配置完成后上传一张测试图片,检查是否直接存入/home/public_html/images目录,同时后台媒体库能正常加载图片即可。
内容的提问来源于stack exchange,提问作者Mr Lift
相关产品推荐
相关产品推荐

