将.kml文件上传到WordPress

问题描述 投票:4回答:1

我正在尝试将.kml文件上传到WordPress。我有一点工作,但最新的WordPress更新似乎打破了它。

我正在使用这个功能

function my_myme_types($mime_types){
$mime_types['kml'] = 'application/vnd.google-earth.kml+xml'; //Adding kml extension
$mime_types['kmz'] = 'application/vnd.google-earth.kmz'; //Adding kmz files
return $mime_types;
}
add_filter('upload_mimes', 'my_myme_types', 1, 1);

上传时收到此错误

“抱歉,出于安全考虑,不允许使用此文件类型。”

wordpress kml
1个回答
11
投票

要正确支持KML / KMZ文件,您必须使用text/xmlapplication/zip,因为WordPress将声明的MIME类型与“真实”检测到的MIME类型进行比较(有关详细信息,请参阅wp_check_filetype_and_ext中的函数wp-includes/functions.php

function add_upload_mimes($mimes) {
  $mimes['kml'] = 'text/xml';
  $mimes['kmz'] = 'application/zip';
  return $mimes;
}
add_filter('upload_mimes', 'add_upload_mimes');

更新(2019-02-28):kml被检测为text / xml而不是application / xml,相应地更改代码应解决下面评论中描述的问题。

© www.soinside.com 2019 - 2024. All rights reserved.