文章目录[隐藏]
在WordPress中自定义媒体上传路径可以通过以下几种方法实现:
1. 通过add_filter
钩子修改上传路径:
你可以将以下代码添加到当前主题的functions.php
文件中,以修改上传路径:
function slider_upload_dir($uploads) {
$siteurl = get_option('siteurl');
$uploads['path'] = WP_CONTENT_DIR . '/slider';
$uploads['url'] = $siteurl . '/wp-content/slider';
$uploads['subdir'] = '';
$uploads['basedir'] = $uploads['path'];
$uploads['baseurl'] = $uploads['url'];
$uploads['error'] = false;
return $uploads;
}
add_filter('upload_dir', 'slider_upload_dir');
之后媒体上传路径会修改为:wp-content/slider
,你可以修改目录名称以适应你的需求。
2. 找回WordPress隐藏的上传路径选项:
自WordPress 3.5版本开始,后台媒体设置页面的“默认上传路径和文件的完整URL地址”选项被隐藏,可以通过以下代码将该选项调出来:
if(get_option('upload_path')=='wp-content/uploads' || get_option('upload_path')==null) {
update_option('upload_path',WP_CONTENT_DIR.'/uploads');
}
使用后可以删除这段代码,不需要保留在主题中。需要注意的是,上传路径只能写相对路径,例如:wp-content/uploads/2023/img
。
3. 使用插件自定义上传路径:
你可以安装如“Custom Upload Dir”等插件来实现自定义上传路径。这些插件可以让你根据文章标题、分类、作者、发布日期等变量构建路径。
4. 直接在wp-config.php
文件中定义UPLOADS
常量:
在wp-config.php
文件中添加以下代码来定义上传路径:
define('UPLOADS', 'wp-content/myfiles');
其中'wp-content/myfiles'
是你希望上传文件保存到的路径。需要注意的是,这种方法只能指定上传的相对目录,生成文件的URL地址不能使用子域名。
以上方法可以帮助你自定义WordPress的媒体上传路径,你可以根据实际情况选择适合的方法进行设置。