【问题标题】:Allow .json upload file in WordPress允许在 WordPress 中上传 .json 文件
【发布时间】:2020-12-06 20:23:28
【问题描述】:

我想在 WordPress 的媒体库中上传 .json 文件。这样做的原因是我正在使用lottie 动画并且输出是一个动画 .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 );

有人知道此类问题的解决方案吗?

最好的问候!

【问题讨论】:

    标签: php json wordpress


    【解决方案1】:

    我只是添加了两个不同的函数而不是数组,并且由于某种原因它起作用了。

    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');
    ``
    

    【讨论】:

      【解决方案2】:

      在您的原始代码中,您在 $mime_types 中声明了新的 mime 类型,但不对其执行任何操作,而是返回原始未更改的 $mimes


      至于您的工作解决方案,您只能使用以下一种功能:

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

      【讨论】:

      • 谢谢,现在我觉得我没有意识到这个问题很愚蠢?
      【解决方案3】:

      如果这对任何人都有帮助,如果您使用的是 WordPress Multisite,其中需要首先在WordPress 中的“网络管理员”->“设置”页面。显然,您的 WordPress 用户需要足够的权限才能看到此设置页面。

      根据我的经验,将json 添加到此列表后,upload_mimes 过滤器将按预期工作。

      【讨论】:

        【解决方案4】:

        由于 PHP 确定 json 文件的 mime 类型为 text/plain(参见 here for more),因此正确的解决方案是:

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

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2014-04-09
          • 1970-01-01
          • 1970-01-01
          • 2021-10-25
          • 1970-01-01
          • 2013-01-29
          • 2011-10-20
          相关资源
          最近更新 更多