我正在嘗試檢查用戶元資料是否為空。如果為空,則將用戶重定向到一個頁面,否則重定向到默認頁面。
但是我下面的代碼只是重定向到默認頁面。
add_filter('woocommerce_login_redirect', 'ac_my_acct_login_redirect');
function ac_my_acct_login_redirect($redirect_to) {
$user_id = get_current_user_id();
$father = get_user_meta( $user_id, 'fath_name', true );
$update_pro = esc_url(get_permalink('123')); // the page I want for redirection if metadata is empty
$my_acct = esc_url(get_permalink( wc_get_page_id( 'myaccount' ) )); // default woocommerce my account page
if(empty($father)){
$redirect_to = $update_pro;
}
else {
$redirect_to = $my_acct;
}
return $redirect_to;
}
元鍵= fath_name(即使它有價值,重定向仍然無法按預期作業)。有什么建議嗎?
uj5u.com熱心網友回復:
您的代碼包含一些錯誤
get_current_user_id()沒有必要,因為$user傳遞給回呼函式- get_permalink()需要一個 int (123),而不是一個字串 ("123")
- 確保頁面 ID 確實存在
所以你得到:
function filter_woocommerce_login_redirect( $redirect, $user ) {
// Get user meta
$value = get_user_meta( $user->ID, 'fath_name', true );
// Empty
if ( empty( $value ) ) {
$redirect = get_permalink( 123 );
} else {
// Get the "My account" url
$redirect = get_permalink( wc_get_page_id( 'myaccount' ) );
}
return $redirect;
}
add_filter( 'woocommerce_login_redirect', 'filter_woocommerce_login_redirect', 10, 2 );
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/355635.html
標籤:WordPress的 重定向 求购 用户数据
