2015-06-20 105 views
1

我在woocommerce“查看订单”页面中创建了一个包含acf_form()(高级自定义字段前端表单)的前端表单,该表单允许客户上传一些文件对我们来说,表单对于管理员来说工作正常,但是当你用一个客户帐户登录并且你选择你的文件时它说“你没有权限附加文件”,在我编辑"customer"后,通过添加下面的代码到functions.php允许“客户”用户角色通过acf_form在前端上传文件

/** 
* Allow customers to upload files 
* 
* @package Wordpress 
* @subpackage Rightec Theme 
* @author Dornaweb.com 
*/ 
if (current_user_can('customer')) { 
    add_action('init', 'allow_customer_uploads', 20); 
    add_action('admin_init', 'allow_customer_uploads', 20); 
} 
function allow_customer_uploads() { 
    $customer = get_role('customer'); 
    $customer->add_cap('upload_files'); 
    $customer->add_cap('unfiltered_upload'); 
} 

我也试过"user role editor"插件,但它不工作太

请帮助我!

+0

Anyoneee?请其如此重要 – Amin

+0

没关系,我解决了这个问题:| – Amin

+0

你是如何解决这个问题的?我有同样的问题! – andycrone

回答

0

我也有这个问题,试图让一个新的WooCommerce客户上传文件的订单。除了上面的权限,您需要:

  1. 确保您使用的ACF Pro(必须购买它)。
  2. 在您的acf_form()数组中定义'uploader' => 'basic'
  3. 将功能添加到客户角色'edit_pages''edit_posts'

您需要ACF Pro来支持您需要的基本上传器,因为除非您是管理员,否则WP Media上传器绝不允许从前端上传。

希望这可以帮助别人!