将媒体附件筛选器添加到自定义wp.media Frame

时间:2019-07-20 作者:Anton Lukin

使用wp.media 函数创建自定义上传器弹出窗口,我找不到显示附件筛选器的参数。

if(typeof wp === \'undefined\' || typeof wp.media === \'undefined\') {
  return false;
}

var frame = wp.media({
   title: \'Custom title\',
   multiple: false
});
我的结果:

enter image description here

预期结果:

enter image description here

任何帮助都将不胜感激

1 个回复
最合适的回答,由SO网友:Sohan Zaman 整理而成

你需要利用filterable 所有物为此,可以扩展库并将其用作自定义状态。

// Create state
var myCustomState = wp.media.controller.Library.extend({
    defaults :  _.defaults({
        id: \'my-custom-state\',
        title: \'Upload Image\',
        allowLocalEdits: true,
        displaySettings: true,
        filterable: \'all\', // This is the property you need. Accepts \'all\', \'uploaded\', or \'unattached\'.
        displayUserSettings: true,
        multiple : false,
    }, wp.media.controller.Library.prototype.defaults )
});

//Setup media frame
frame = wp.media({
    button: {
        text: \'Select\'
    },
    state: \'my-custom-state\', // set the custom state as default state
    states: [
        new myCustomState() // add the state
    ]
});

相关推荐

Custom CSS In Uploads Folder

我想知道上传文件夹中是否有自定义CSS文件。我从以前的开发人员那里继承了一个自定义主题,前端的大量样式都是从这个样式表派生出来的,它同样不在主题或插件文件夹中,而是wp-content/uploads 文件夹我正在努力找出它是如何推导出来的,但它确实存在。这是否被视为不良做法,或者是否有这样的用例?我相信之前的开发人员提到了Visual Composer或JS Composer以及编译更少的文件。。。但我对此不确定,他已经失去了联系,我想知道为什么我们要以这种方式使用样式表,因此这个问题是关于最佳实践的,