簡體   English   中英

將用戶重定向到 WordPress 中的登錄 URL 的最佳方法?

[英]Best way to redirect user to login URL in WordPress?

我有許多頁面需要我的用戶在訪問它們時登錄。

我已將我的登錄頁面重新映射到 mysite.com/login。 因此,目前對於需要用戶登錄的任何頁面,我將使用以下內容重定向它們。

//If user is not logged in...
if ( !is_user_logged_in() ) {
    
    wp_redirect( wp_login_url() ); 
}

我的問題是,以上內容是否足以確保未登錄的用戶始終被重定向並且不會導致“重定向過多”錯誤。

這是 2 個示例,請檢查您是否可以添加 function.php 文件

add_action( 'admin_init', 'redirect_non_logged_users_to_specific_page' );

function redirect_non_logged_users_to_specific_page() {

if ( !is_user_logged_in() && is_page('add page slug or ID here') && $_SERVER['PHP_SELF'] != '/wp-admin/admin-ajax.php' ) {

wp_redirect( 'http://www.example.dev/your-page/' ); 
    exit;
   }
}

將其放入 functions.php 文件並更改頁面 ID 或 slug 以及重定向 url。

add_action( 'template_redirect', 'redirect_to_specific_page' );

function redirect_to_specific_page() {

if ( is_page('slug') && ! is_user_logged_in() ) {

wp_redirect( 'http://www.example.dev/your-page/', 301 ); 
  exit;
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM