lowalAllow.json上传文件中的文件

问题描述 投票:0回答:4
我想在WordPress中的媒体库中上传.json文件。这样做的原因是我正在使用Lottie Animations,并且输出是一个动画.svg文件。我只想从后端检索文件URL即可在前端使用它。不幸的是,即使使用以下代码的使用,json也无助于导入:

function cc_mime_types($mimes) { $mime_types = array( 'svg' => 'image/svg+xml', 'json' => 'application/json', ); return $mimes; } add_filter('upload_mimes', 'cc_mime_types'); define( 'ALLOW_UNFILTERED_UPLOADS', true );
任何人都知道解决此类问题的解决方案吗?
toss!

由于PHP确定JSON文件的MIME类型为
php json wordpress
4个回答
6
投票
(请参阅More

)正确的解决方案是:

function my_mime_types($mimes) {
    $mimes['json'] = 'text/plain';
    return $mimes;
}
add_filter('upload_mimes', 'my_mime_types');

    

在您的原始代码中,您正在宣布新的MIME类型
$mime_types

1
投票
$mimes

.

为您的工作解决方案,您只能使用一个函数,如下所示:

function cc_mime_types($mimes) { $mimes['json'] = 'application/json'; $mimes['svg'] = 'image/svg+xml'; return $mimes; } add_filter('upload_mimes', 'cc_mime_types');

我刚刚添加了两个不同的功能,而不是一个数组,由于某种原因它起作用。
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'); ``

1
投票

如果您使用WordPress多站点,则
ALLOW_UNFILTERED_UPLOADS
常数或

1
投票
过滤器都不会自行起作用。 WordPress中的Admin' - >“设置”页面。显然,您的WordPress用户需要足够的私有,才能看到此设置页面。

在我的经验中,一旦添加到此列表中,

json
过滤器将按预期工作。

如果您想继续代码,则可以编写以下代码:

upload_mimes
	

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.