在 WordPress 中增加对 .rar 附件类型的支持,可以通过以下方法实现:
将以下完整的代码添加到当前主题的 functions.php 文件中(或通过代码片段插件添加),即可让 WordPress 允许上传 .rar 文件:
/**
* 允许上传 .rar 文件
*/
function custom_upload_mimes( $mimes ) {
// 添加 RAR 文件的 MIME 类型(常见两种,可根据需要选择其一或都添加)
$mimes['rar'] = 'application/vnd.rar';
// 如果上面不行,可以注释掉上面,启用下面一行
// $mimes['rar'] = 'application/x-rar-compressed';
return $mimes;
}
add_filter( 'upload_mimes', 'custom_upload_mimes' );
/**
* 修正 .rar 文件的真实 MIME 类型检测
* 防止 WordPress 4.7.1+ 的严格检查拦截
*/
function fix_rar_mime_type( $data, $file, $filename, $mimes ) {
$ext = pathinfo( $filename, PATHINFO_EXTENSION );
if ( 'rar' === $ext ) {
$data['ext'] = 'rar';
$data['type'] = 'application/vnd.rar'; // 与上面的 MIME 类型保持一致
// 如果上面不行,可尝试改用 'application/x-rar-compressed'
}
return $data;
}
add_filter( 'wp_check_filetype_and_ext', 'fix_rar_mime_type', 10, 4 );
使用说明
- 添加代码:将上述代码复制到主题的 functions.php 文件末尾(建议使用子主题,避免主题更新时丢失)。
- 测试上传:保存文件后,在后台媒体库尝试上传 .rar 文件。
- 如果仍然失败:
- 确保你的用户角色为管理员或编辑(作者、贡献者可能受限)。
- 如果网站是 多站点网络(Multisite),还需在 网络管理后台 → 设置 → 网络设置 中,将 rar 添加到“允许上传的文件类型”列表中。
- 检查是否安装了安全插件(如 Wordfence、Sucuri),它们可能拦截非常见文件类型,需在插件设置中将 rar 加入白名单。
添加后,WordPress 媒体库将支持 .rar 文件的上传和下载。
- 本文固定链接: https://www.fengshen.cn/2026/03/wordpress添加rar附件支持/
- 转载请注明: fengshen 发表于 一梦风神
觉得文章有用,微信打赏一元。
