因此,在新的WP更新后,我的表单将不允许上载某些文件。我有一个重力表单,带有一个上传字段,用于提交3D打印文件。我可以使用一种类型的文件,但不能使用其他类型的文件。只是希望其他人有这个问题,并有一些更新的解决方案。
我正在使用:
add_filter(\'upload_mimes\',\'add_custom_mime_types\',1,1);
function add_custom_mime_types($mime_types){
$mime_types[\'stl\'] = \'application/wavefront-stl\';
$mime_types[\'igs\'] = \'application/iges\';
$mime_types[\'stp\'] = \'application/step\';
$mime_types[\'step\'] = \'application/step\';
return $mime_types;
}
奇怪的是。stl将上载,但不会上载其他内容。我还安装了
Extra File Types 插件添加文件类型,但没有帮助。
Disable Real MIME Check 也不起作用。
我还补充道:
define( \'ALLOW_UNFILTERED_UPLOADS\', true );
到wp config,我可以作为管理员将这些文件上载到媒体库,但我需要从前端表单上载这些文件。
SO网友:shacker
多亏了这条线here, 我找到了这个代码
function fix_wp_csv_mime_bug( $data, $file, $filename, $mimes ) {
$wp_filetype = wp_check_filetype( $filename, $mimes );
$ext = $wp_filetype[\'ext\'];
$type = $wp_filetype[\'type\'];
$proper_filename = $data[\'proper_filename\'];
return compact( \'ext\', \'type\', \'proper_filename\' );
}
add_filter( \'wp_check_filetype_and_ext\', \'fix_wp_csv_mime_bug\', 10, 4 );
允许通过表单上传文件。我不知道我在向什么敞开心扉,但现在它起作用了。