如何将 WordPress 3.5 媒体管理器库工具用于我自己的插件

amb*_*use 4 media wordpress wordpress-3.5

在 WordPress 3.5 媒体管理器的“创建图库”选项卡下,用户可以选择多个图像,然后能够在第二页中对图像重新排序。完成后,它会插入一个短代码,例如:[gallery ids="895,1007,986"]

我想使用相同的界面,以便用户可以选择和重新排序图像。但是,我不想返回短代码,而是只想返回图像的 ID 列表,如下所示:895,1007,986

另一件重要的事情是我的按钮将位于元框中,并且 ID 列表不会放置在 TinyMCE 帖子编辑区域内。

我怎样才能实现这个目标?

谢谢。

NoB*_*ugs 5

您可以a = wp.media.gallery.edit('[gallery ids="2,1,3..."]');像 WordPress 在 media-editor.js 中那样进行调用。

我不确定什么事件可以赶上更新,我找到了它a.on('all',function(n,a) {console.log(n); console.log(a)})

请注意日志中的“更新”,以及带有models图像数组的对象。因此,使用图库选择器的最快解决方案是:

wp.media.gallery.edit('[gallery ids="numberlist"]').on('update',function(obj)
  { do something with obj.models)})
Run Code Online (Sandbox Code Playgroud)

  • 惊人的!这是我用来获取编号列表的代码: `a = wp.media.gallery.edit('[gallery ids="2,1,3..."]').on('update', function(obj ) { var numberlist = []; $.each(obj.models, function(id,val) {numberlist.push(val.id)}); 使用 numberlist.join(",") });` (2认同)