有一个类似的名字的帖子,但显示的答案是不为我工作。
我试图获取用户的$USER_ID,因为他们注册到我的站点,并在随后的after form submission钩子中使用该变量,所以
add_action( 'gform_user_registered', 'send_user_email', 10, 4 );
function send_user_email($user_id, $feed, $user_pass) {}
是带有$USER_ID变量的钩子
add_action("gform_after_submission_1", "input_fields1", 10, 2);
function input_fields1($entry, $form) {}
是用于在提交后处理表单数据的钩子。
我试过以下几招:
add_action( 'gform_user_registered', 'send_user_email', 10, 4 );
function send_user_email($user_id, $feed, $user_pass) {
var_dump($user_id.' '. 'a');
add_action("gform_after_submission_1", "input_fields1", 10, 2);
function input_fields1($entry, $form) {
global $user_id;
var_dump($user_id.' '.'b');
}
}
这将返回“29 a”(第一个Var_dump)和“b”,但不返回“29 b”(第二个Var_dump将返回“29 b
是我的PHP错了,还是我没有理解这些钩子是如何工作的?
我也试过
add_action("gform_after_submission_1", "input_fields1", 10, 2);
function input_fields1($entry, $form) {
add_action( 'gform_user_registered', 'send_user_email', 10, 4 );
function send_user_email($user_id, $feed, $user_pass) {
var_dump($user_id.' '. 'a');
}
global $user_id;
var_dump($user_id.' '.'b');
}
这将返回没有变量的“b”,也不会返回任何“a
我现在意识到我不需要这么做。 'gform_user_register'钩子还包含了我试图与$user_id变量一起使用的$entry变量,因此不需要在钩子之间移动变量,因为我可以在一个钩子函数中完成我需要做的所有事情。