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

2021年3月28日15:11:46 发表评论
广告也精彩

WordPress媒体文件上传路径如何自定义?为什么需要自定义?现在的网站好多都是动静分离,尤其是后期,服务器数据容量越来越少,就需要增加数据盘。如果将上传的媒体文件指定目录存储呢?今天有两种方法:

小陈建站

方案一:官方钩子修改

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

  1. function new_upload_dir($uploads) {
  2.     $siteurl = get_option( 'siteurl' );
  3.     $uploads['path'] = WP_CONTENT_DIR . '/new';
  4.     $uploads['url'] = $siteurl . '/wp-content/new';
  5.     $uploads['subdir'] = '';
  6.     $uploads['basedir'] = $uploads['path'];
  7.     $uploads['baseurl'] = $uploads['url'];
  8.     $uploads['error'] = false;
  9.     return $uploads;
  10.   }
  11.   add_filter('upload_dir', 'new_upload_dir');

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

 

方案二:WordPress上传路径选项

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

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

  1. if(get_option('upload_path')=='wp-content/uploads' || get_option('upload_path')==null) {
  2.         update_option('upload_path',WP_CONTENT_DIR.'/uploads');
  3.     }

然后刷新后台,设置-媒体里边就出来了上传路径

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

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
ts小陈

发表评论(请规范评论)--评论需审核

:?: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :cry: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :neutral: :razz:

已登录用户不需要填写以下内容