题
有没有一种简单的方法可以将通过媒体上传上传的图像数量限制为一个(每个帖子)?
解决方案
我现在不会详细介绍代码,因为我不确定您是否需要我这样做。您基本上需要修改 SWFUpload
JavaScript 设置数组来设置 file_upload_limit
到 1
. 。不幸的是,我不相信 SWFUpload 允许您在设置变量被更改后更改它。 init
ed,因为它已经启动了带有设置的 Flash 嵌入。
所以,你必须挂钩 flash_uploader
过滤器以禁用它设置“正常”Flash 上传器,然后挂接到 pre-upload-ui
操作并使用与 WordPress 相同的变量设置 Flash 上传程序,但要注意 file_upload_limit
环境。(看第 1446 行 media.php
明白我的意思)。
如果您这样做,您还必须禁用 HTML 上传表单,以便用户可以使用它来绕过 Flash 上传程序。
相反,您可以(更容易,但可能对用户来说不太有用)挂钩 load-async-upload.php
行动(参见第202行 admin.php
) 如果当前用户已经上传了给定帖子的图像,则拒绝上传请求。这需要用户在 Flash Uploader 中选择图像,然后在上传后抛出错误,提示“您无法上传其他文件”