wordpress - 仅限制 Woocommerce 上传的特定文件类型 (Wordpress)
问题描述
我正在将 Wordpress 与Woocommerce 插件一起使用。在 Woocommerce 中,可以创建虚拟/数字可下载产品。我只想限制Woocommerce 上传的特定文件类型。
我已经找到了限制标准 Wordpress 上传文件类型的解决方案,但不适用于 Woocommerce 上传文件。
我想允许人们在标准 Wordpress 上传中上传任何文件类型 --- 但只想允许他们在 Woocommerce 上传字段中上传档案类型(.zip、.rar、.7z ...)。
Woocommerce 上传位于 wp-content/uploads/woocommerce_uploads/2018/01/...
也许这对于为我的问题找到解决方案很重要。
编辑 1//
标准 Wordpress 上传限制如下所示(PHP):
add_filter('upload_mimes','restrict_mimes_for_author');
function restrict_mimes_for_author($mimes) {
if (!current_user_can('author')) {
return;
}
$mimes = array('pdf' => 'application/pdf');
return $mimes;
}
或者
add_filter('upload_mimes','restrict_mime');
function restrict_mime($mimes) {
$mimes = array(
'jpg|jpeg|jpe' => 'image/jpeg',
'gif' => 'image/gif',
);
return $mimes;
}
解决方案
默认情况下,WooCommerce 将与其相关的文件保存在 woo-commerce 上传文件夹中,因此如果您可以在进入此文件夹时过滤掉文件类型,那么您可以区分正常上传和 woo-commerce 上传。
希望它能提供一些线索。
谢谢
推荐阅读
- java - 使用 List 的 Java Prepared Statement 以及如何在列表中返回值
- javascript - 如何更改 jQuery Ajax 完成回调参数
- php - 在 Rollbar 中记录消息会使 php 错误消失
- swift - Swift/Alamofire/ObjectMapper:忽略 nil 值
- java - Flink 中的局部变量
- javascript - cy.click() 只能在单个元素上调用
- django - 查询/注释中的 Django 格式 DecimalField
- java - SqlConnection 在连接测试时抛出错误
- swift - Swift 初始化器
- c++ - vim 和 ctags,未找到具有相同签名的多个定义