可以将上载过程限制为仅选择一个文件。现在,一个人可以从pc上选择各种文件,我正在设法将此功能限制为一个文件。
提前谢谢。
可以将上载过程限制为仅选择一个文件。现在,一个人可以从pc上选择各种文件,我正在设法将此功能限制为一个文件。
提前谢谢。
WordPress包含2个媒体加载程序。Flash uploader允许选择多个文件,而浏览器uploader一次只允许选择一个文件。
要禁用Flash uploader,请在函数中添加以下过滤器。php
add_filter(\'flash_uploader\', create_function(\'$flash\', \'return false;\'));
进一步研究后,使用create\\u函数可能不是一个好主意。拆除过滤器的更好方法是:function disable_flash_uplaoder() {
return $flash = false;
}
add_filter( \'flash_uploader\', \'disable_flash_uploader\', 7 );
Chris给出的答案很好,但实际上并没有将上载限制为仅一个文件,一次只上载一个文件,因此用户可以上载任意多个文件,但您也可以使用wp_handle_upload_prefilter
胡克,看看Mikes answer 类似的问题。
您可以通过修改Flash uploader以仅接受一个文件the BUTTON_ACTION
setting. 您可以通过SWFUpload配置(在WordPress中硬编码)或the setButtonAction()
method 生成的SWFUpload对象,但这仅在加载Flash文件后才起作用。我设法做到了这一点swfupload_loaded_handler
挂钩:
var wpse15264_original_onload = SWFUpload.onload;
SWFUpload.onload = function() {
wpse15264_original_onload();
swfu.addSetting( \'swfupload_loaded_handler\', function() {
this.setButtonAction( SWFUpload.BUTTON_ACTION.SELECT_FILE );
} );
}
您可以在SWFUpload代码之后通过the post-html-upload-ui
hook.此代码不会将处理程序添加到swfupload_loaded_handler
事件,它将替换当前处理程序。这应该没有问题,因为WordPress不使用此处理程序,但如果将来使用此处理程序,您应该确保保存原始处理程序并执行它(就像我使用onload
处理程序)。
当然,这并不妨碍人们多次使用上传程序。有关解决方案,请参阅Bainternet的参考资料。
我在获取图像时获得404状态,http仍然包含该图像。图像显示在浏览器中,但404代码中断了一些应用程序。对wp内容/上载/的调用被重定向到。htaccess:<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\\.php$ - [L] RewriteRule (.*) /index.php?getfile=$1 [L] </IfModule>&