加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

WordPress 技巧:自定义上传路径和生成文件的 URL 地址

发布时间:2018-04-22 11:08:32 所属栏目:语言 来源:我爱水煮鱼
导读:WordPress 3.5 一个最大的改变就是更加简洁化,把一些用户不常使用的设置去掉或者隐藏了,比如后台的媒体(Media)设置页面隐藏上传路径(upload_path)和文件 URL 地址(upload_url_path)的设定就被隐藏了。如果你还要进行设置这两个选项,现在只能在opt

WordPress 3.5 一个最大的改变就是更加简洁化,把一些用户不常使用的设置去掉或者隐藏了,比如后台的媒体(Media)设置页面隐藏上传路径(upload_path)和文件 URL 地址(upload_url_path)的设定就被隐藏了。如果你还要进行设置这两个选项,现在只能在options.php中进行设置,或者使用 UPLOADS 常量,也可以使用 upload_dir 这个 filter。下面分别介绍下这三种方法:

1.  中设置

直接访问:http://site_url/wp-admin/options.php,然后找到下面选项,将其设置为你所需的参数。

2. 定义 UPLOADS 常量

在  文件中定义 UPLOADS 这个常量:

WordPress 3.5 一个最大的改变就是更加简洁化,把一些用户不常使用的设置去掉或者隐藏了,比如后台的媒体(Media)设置页面隐藏上传路径(upload_path)和文件 URL 地址(upload_url_path)的设定就被隐藏了。如果你还要进行设置这两个选项,现在只能在options.php中进行设置,或者使用 UPLOADS 常量,也可以使用 upload_dir 这个 filter。

define(‘UPLOADS’,‘my-uploads’);

这个方法有个不好的地方:只能指定上传的相对目录,生成文件的 URL 地址不能使用子域名,这样在做静态文件 CDN 加速的时候就不是很方便。

3. 使用  filter

这个方法,效果其实和第一个方法基本一致:

add_filter( ‘upload_dir’, ‘wpjam_custom_upload_dir’ );

function wpjam_custom_upload_dir( $uploads ) {

$upload_path = ‘’;

$upload_url_path = ‘’;

if ( empty( $upload_path ) || ‘wp-content/uploads’ == $upload_path ) {

$uploads[‘basedir’] = WP_CONTENT_DIR 。 ‘/uploads’;

} elseif ( 0 !== strpos( $upload_path, ABSPATH ) ) {

$uploads[‘basedir’] = path_join( ABSPATH, $upload_path );

} else {

$uploads[‘basedir’] = $upload_path;

}

$uploads[‘path’] = $uploads[‘basedir’].$uploads[‘subdir’];

if ( $upload_url_path ) {

$uploads[‘baseurl’] = $upload_url_path;

$uploads[‘url’] = $uploads[‘baseurl’].$uploads[‘subdir’];

}

return $uploads;

}

将上面代码中的$upload_path  和$upload_url_path改成你要的值,然后上传到当前主题的fucntions.php文件即可。

另外这三种方法的优先级是:使用upload_dir filter> 定义 UPLOADS 常量 >options.php 中设置

文章来源:我爱水煮鱼

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!