如何在wordpress媒体上传器中显示过滤的媒体元素?

时间:2017-01-03 20:09:44

标签: wordpress

我一直在wp-includes文件夹中的js文件中来回奔跑,并且已经对搜索结果感到沮丧,但似乎没有什么能满足我的需要。

我需要过滤Wordpress media uploader中显示的媒体元素列表。

我在主题中集成了Upload media按钮。您可以单击该按钮,弹出一个模态。您可以上传文件或从列表中选择。默认情况下,此列表恰好包含到目前为止上传的每个元素。但我设计的按钮有一些更具体的操作。像用户可以只在一个地方选择pdf文件,可能只是其他一些图像。基本上我需要根据我的按钮偏好过滤媒体项目列表。

我追踪(可能是错误的)MediaFrame负责显示元素,wp.media.model.Attachments可能包含使用wp.media.model.Query.get()查询发送{的媒体元素的元素集合{1}}请求admin-ajax一些查询参数。我搜索了实际的ajax函数并找到了query-attachments查询参数。我只需要在那里传递我想要的mime类型。

那么在启动post_mime_type时如何传递我想要的mime类型?

任何类型的帮助都会受到赞赏并提前感谢。

1 个答案:

答案 0 :(得分:1)

好吧,经过更多的挖掘并弄乱了与此功能相关的核心jsphp文件后,我终于找到了实际的过程,并且令人惊讶的是这非常简单。

wp.media()函数接受一些显而易见的参数 -

  • 标题要在上传者上显示的文字
  • 按钮选择按钮
  • 多次是否选择多个文件
  • 这实际上是保留过滤器参数的地方

还有一些我认为(目前还无法弄清楚)。刚刚通过我的mime类型瞧!这个清单是有条理的!

var file_frame;
file_frame = wp.media.frames.file_frame = wp.media({
    library: {
        //  I don't know why but the following two were already 
        // there even when I wasn't passing anything.
        orderby: "date", 
        query: true, 
        post_mime_type: ['image/png'] // pass all mimes in array
    },
});

多数人!!