Manipulating Media uploader

时间:2011-06-19 作者:Matthew Ruddy

好啊我会尽可能地解释这件事,对我直言不讳。无论如何,我正在尝试将默认媒体上传器作为插件的一部分。

目前,我已成功使用该筛选器attachment_fields_to_edit 隐藏大多数输入字段,只保留标题(&;备用文本字段,以及自定义提交按钮。单击时,此按钮将获取图像URL并将其放置到div 在父页上。

不管怎样,这就是我的问题。上传器本身的所有功能都按照我的要求运行,但目前过滤器正在将其自身应用于帖子、页面、媒体库等中的媒体上传器。我只需要其他字段&;自定义按钮显示在我的插件中,但不显示在其他地方。

我什么都试过了,但没法成功。我设法将自己的查询应用于媒体上传。php URL,这样我可以使可选字段仅显示在我的插件的thickbox“library”选项卡上,但在上载新图像时,会显示默认字段,因为Wordpress使用可选文件上载图像;异步上载。php。

以下是整个功能:http://pastebin.com/5vpecMvL

关于各种功能的一些信息:riva_slider_pro_info() 是一个返回值数组的函数。riva_slider_pro_uri( $search ) 获取$\\u SERVER[\'REQUEST\\u URI\']并将其存储在变量中,搜索其$search参数并返回true或false。

在media uploader thickbox的“库”选项卡中,它正在返回true 因为我在媒体上传上传递了一个额外的查询。php URL(例如,“media upload.php?post\\u id=0$slideshow=true&;type=image&;TB\\u iframe=1”)。但是,它正在回归false 用户刚刚在同一个thickbox中上载了一个新图像后,因为它使用异步上载。改为php文件。我不知道如何将查询传递到这个URL,如果可以这样做的话。

我意识到这可能很难理解,但我已经尽力解释了。我真的在为这件事发愁,花了很长时间想弄明白。感谢您的任何意见或建议,或者理想的解决方案!提前谢谢。

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

最后,我通过jquery点击事件启动了手动上传的thickbox。然后使用setInterval,我可以隐藏我想要的片段。

jQuery(文档)。就绪(函数($){

  $(\'.specialclass\').click(function() { 
       //get post id from somewhere (for me this was the row column
    string = $(this).parents(\'tr.type-portfolio\').attr(\'id\'); 
    if(/post-(\\d+)/.exec(string)[1]) post_id = parseInt(/post-(\\d+)/.exec(string)[1], 10);

    tbframe_interval = setInterval(function() {

       //remove url, alignment and size fields- auto set to null, none and full respectively                        
       $(\'#TB_iframeContent\').contents().find(\'.url\').hide().find(\'input\').val(\'\');
       $(\'#TB_iframeContent\').contents().find(\'.align\').hide().find(\'input:radio\').filter(\'[value="none"]\').attr(\'checked\', true);
       $(\'#TB_iframeContent\').contents().find(\'.image-size\').hide().find(\'input:radio\').filter(\'[value="full"]\').attr(\'checked\', true);

    }, 2000);

    if(post_id) tb_show(\'\', \'media-upload.php?post_id=\'+post_id+\'&type=image&tab=library&TB_iframe=true\'); //tab sets the opened TB window to show library by default

    return false;
   });
});

结束

相关推荐

404从wp-Content/Uploads/获取图像时

我在获取图像时获得404状态,http仍然包含该图像。图像显示在浏览器中,但404代码中断了一些应用程序。对wp内容/上载/的调用被重定向到。htaccess:<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\\.php$ - [L] RewriteRule (.*) /index.php?getfile=$1 [L] </IfModule>&