Wordpress 允许贡献者用户角色执行复制操作 PHP

问题描述

我想允许贡献者用户角色可以将文件一个位置复制到另一个位置。我正在使用 copy(copy_from,copy_to) 函数。问题是当这个函数执行时,我收到了 Failed to open stream: Permission deniedPHP 警告。以管理员用户角色登录时,相同的功能可以正常工作。我尝试向用户添加 manage_options功能,以便贡献者也可以复制文件。但是 add_cap() 不返回任何内容并且不会向用户添加功能

这是我正在使用的代码

function fn_add_cap($cap)
{
    $current_user = wp_get_current_user();
    $userID = $current_user->ID;
    $user = new WP_User($userID);
    $user->add_cap( $cap );
}

function fn_remove_cap($cap)
{
    $current_user = wp_get_current_user();
    $userID = $current_user->ID;
    $user = new WP_User($userID);
    $user->remove_cap( $cap );
}


$assigned_cap = 0;
if(!current_user_can('manage_options')){
    fn_add_cap('manage_options');
    $assigned_cap = 1;
}

$coppied = copy($copy_from,$copy_to);
if($coppied){
    echo "file coppied";
} else{
    echo "not coppied";
}

if($assigned_cap == 1){
    fn_remove_cap('manage_options');
}

任何人都可以在我做错的地方帮助我或任何其他替代方法来使其正常工作。

提前致谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)