4 回答

TA貢獻1865條經驗 獲得超7個贊
由于 PHP 確定 json 文件的 mime 類型text/plain
,正確的解決方案是:
function my_mime_types($mimes) {
? ? $mimes['json'] = 'text/plain';
? ? return $mimes;
}
add_filter('upload_mimes', 'my_mime_types');

TA貢獻1848條經驗 獲得超2個贊
在原始代碼中,您聲明了新的 mime 類型$mime_types,但不對其執行任何操作,而是返回原始的未更改的類型$mimes。
至于您的工作解決方案,您可以僅使用一個函數,如下所示:
function cc_mime_types($mimes) {
$mimes['json'] = 'application/json';
$mimes['svg'] = 'image/svg+xml';
return $mimes;
}
add_filter('upload_mimes', 'cc_mime_types');

TA貢獻1155條經驗 獲得超0個贊
我只是添加了兩個不同的函數而不是數組,并且由于某種原因它起作用了。
function json_mime_types($mimes) {
$mimes['json'] = 'application/json';
return $mimes;
}
add_filter('upload_mimes', 'json_mime_types');
function cc_mime_types($mimes) {
$mimes['svg'] = 'image/svg+xml';
return $mimes;
}
add_filter('upload_mimes', 'cc_mime_types');
``

TA貢獻1887條經驗 獲得超5個贊
如果這對任何人有幫助,如果您使用 WordPress Multisite,其中需要首先在“網絡管理”->“設置”中聲明子站點允許的文件類型列表,則ALLOW_UNFILTERED_UPLOADS
常量或upload_mimes
過濾器都不會自行工作WordPress 中的頁面。顯然,您的 WordPress 用戶需要足夠的權限才能看到此設置頁面。
根據我的經驗,一旦您添加json
到此列表中,upload_mimes
過濾器就會按預期工作。
- 4 回答
- 0 關注
- 218 瀏覽
添加回答
舉報