php 上传媒体文件,WordPress如何自定义媒体文件上传路径

WordPress如何自定义媒体文件上传路径,为什么需要自定义,默认的不好么?其实在技术宅认为,很多网站都是动静分离的,尤其是网站运营后期,面临着数据盘容量越来越少,就需要额外增加数据盘,但是WordPress除了每天文件夹会一直增加,其他的文件夹只要不修改就不会增加,那么我们就有需要自定义WprdPress的媒体文件上传路径了!那如何修改呢?技术宅这里提供两种方案!

方案一:官方钩子修改

通过WordPress官方提供的钩子add_filter修改上传路径,将以下代码添加进前主题functions.php文件中:

function new_upload_dir($uploads) {

$siteurl = get_option( 'siteurl' );

$uploads['path'] = WP_CONTENT_DIR . '/new';

$uploads['url'] = $siteurl . '/wp-content/new';

$uploads['subdir'] = '';

$uploads['basedir'] = $uploads['path'];

$uploads['baseurl'] = $uploads['url'];

$uploads['error'] = false;

return $uploads;

}

add_filter('upload_dir', 'new_upload_dir');

添加完成后保存文件,并清理PHP缓存后,新增的媒体文件就会默认上传到路径wp-content/new,目录名称自己自定义,但是需要记住的是,使用此方法修改后,如果再次修改,那么后台媒体是不会显示之前上传的图片的!

方案二:找回WordPress隐藏的上传路径选项

从WordPress 3.5版本开始,就隐藏了后台媒体设置页面的“默认上传路径和文件的完整URL地址”选项,但是我们可以通过下面的代码将该选项调出来。

将如下代码添加到当前主题functions.php文件中:

if(get_option('upload_path')=='wp-content/uploads' || get_option('upload_path')==null) {

update_option('upload_path',WP_CONTENT_DIR.'/uploads');

}

348955fe8628ba033f6841ae59c298cc.png

出现了设置选项后可以删除此代码,但是需要注意的是,媒体默认上传路径只能是相对路径,如默认的wp-content/uploads

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值