前端的自定义角色配置文件页面上WP_Editor的WordPress添加媒体按钮不起作用

时间:2019-03-05 10:52:41

标签: wordpress custom-wordpress-pages user-roles wordpress-plugin-creation

我定义了一个自定义角色,该角色在前端有一个单独的配置文件页面。在配置文件页面中,带有带有“添加媒体”按钮的wp_editor。但是图像未附加。这是上传图片时看到的错误-抱歉,您不允许将文件附加到此帖子。

这是自定义角色的功能:

$admins = get_role( 'trip_vendor' );
$admins->add_cap( 'upload_files' );
$admins->add_cap( 'level_1' );
$admins->add_cap( 'edit_post' );                                                   
$admins->add_cap( 'edit_posts' ); 
$admins->add_cap( 'edit_other_posts' ); 
$admins->add_cap( 'publish_posts' ); 
$admins->add_cap( 'read_post' ); 
$admins->add_cap( 'read_private_posts' ); 
$admins->add_cap( 'delete_post' );
$admins->add_cap( 'can_edit_posts' );

这是使用ajax登录自定义角色的方式:

$user = $_POST['user'];
        $pass = $_POST['pass'];
        $creds = array();
        $creds['user_login'] = $user;
        $creds['user_password'] = $pass;
        $creds['remember'] = true;
        $user = wp_signon( $creds, is_ssl() );
        if ( is_wp_error($user) ) 
        {
          $result['type'] = 'failed';
          $result['message'] = __( 'Incorrect Login Credentials!.', 'wp-travel-engine' );
            if ( defined( 'DOING_AJAX' ) && DOING_AJAX )
            {
               $result = json_encode($result);
               echo $result;
            }
        }
        else{
            $_SESSION['login'] = 'login';
            $_SESSION['user'] = $user;
            $_SESSION['pass'] = $pass;
            $result['type'] = 'success';
            $result['message'] = __( 'Logging In...', 'wp-travel-engine' );
            if ( defined( 'DOING_AJAX' ) && DOING_AJAX )
            {
                $result = json_encode($result);
                echo $result;
            }
        }

有人可以为此提供一些指导吗?

1 个答案:

答案 0 :(得分:0)

添加$admins->add_cap( 'upload_files' );

这将使用户也可以上传文件。