Php WordPress删除多个用户时的用户钩子
我正在使用delete_user hook在用户被删除之前执行一些操作(调用另一个函数)。 这是我代码的一部分:Php WordPress删除多个用户时的用户钩子,php,wordpress,Php,Wordpress,我正在使用delete_user hook在用户被删除之前执行一些操作(调用另一个函数)。 这是我代码的一部分: function delete_user( $user_id ) { include('sso_functions.php'); global $wpdb; $user_obj = get_userdata( $user_id ); $email = $user_obj->user_email; $login = array_valu
function delete_user( $user_id )
{
include('sso_functions.php');
global $wpdb;
$user_obj = get_userdata( $user_id );
$email = $user_obj->user_email;
$login = array_values(login($email));
$login_err = $login[1];
$cookie = $login[0];
if($login_err == 0)
{
//....
}
else
{
//...
}
}
add_action( 'delete_user', 'delete_user' );
Login()函数在sso_settings.php文件中声明
如果我尝试删除,只有一个用户工作正常
但如果我尝试删除2个用户,则会调用login()函数,并从Wordpress中删除第一个用户,但在这之后,我得到一个php错误,即重新声明函数login()。
如果我使用include_once('sso_functions.php')而不是include('sso_function.php')。我没有收到错误,用户被从Wordpress中删除,但是第二个用户没有调用函数Login()
你知道我该怎么解决这个问题吗?
谢谢 该字按显示正确的错误消息。而不是使用include('sso_functions.php');试着用它
if(!function_exists('login')){
include('sso_functions.php');
}
我不确定,但我认为删除用户已经是一个功能。请尝试将“删除用户”中的名称替换为其他名称。差不多
add_action( 'delete_user', 'wp_delete_user' );
而且别忘了更改函数的名称。如果您使用您的插件名称作为前缀,效果总是更好。函数登录也一样,添加一个前缀,这样它的核心函数就不会与自定义创建的函数混合使用。谢谢您的回答,但这没有帮助。再次说明,第二个用户没有调用登录函数。我最终解决了这个问题-我检查我是否在“删除用户”页面上,我包括sso_functions.php文件。我没有在函数“delete_user()”中包含该文件。请使用更多信息进行编辑。不鼓励只编写代码和“试试这个”答案,因为它们不包含可搜索的内容,也不解释为什么有人应该“试试这个”。
$array = array(1,2,3,4); //array of user that need to delete
foreach($array as $userid)
{
delete_user( $userid );
}