0
我想添加一個功能bp_core_activated_user,在這裏我希望它做到以下幾點:wp_set_auth_cookie不記錄用戶
- 激活用戶
- 登錄用戶
- 將用戶重定向到他們的個人資料編輯屏幕
我沒有任何問題與1,也不與3,但由於第二步不工作,它不會正確執行#3。
這裏是我的代碼示例
function auto_login_activation($user_id, $key, $user) {
$bp = buddypress();
$bp->activation_complete = true;
//now login and redirect
$user = get_user_by('id', $user_id);
if($user) {
wp_set_current_user($user_id, $user->user_login);
wp_set_auth_cookie($user_id);
}
bp_core_redirect(bp_core_get_user_domain($user_id) .$bp->profile->slug .'/edit/');
}
add_action('bp_core_activated_user', 'auto_login_activation', 0, 3);
如果我禁用重定向,這說明我的屏幕上登錄(會顯示註銷,並隱藏登錄和註冊),但是當我去頁面,只爲登錄用戶,它表明我已註銷。
我知道第1步正在工作,因爲用戶在激活時收到自動歡迎電子郵件。第2步是它跌倒的地方,第3步,我在我的代碼中的其他地方使用bp_core_redirect,沒有問題 我一直在使用插件來達到這個目的,但它也停止工作,並且基本上是相同的代碼。
這是行不通的。它仍然要求我登錄(我重定向到他們的路徑是無法訪問,除非他們登錄)我也使用自定義登錄屏幕,這將有所作爲(我重定向遠離wp-login.php) –
登錄腳本後,嘗試重定向到其他不需要登錄的頁面。然後轉到任何登錄頁面。 –
這似乎也沒有區別。用戶目前仍未登錄。 –