強制轉址不可行
當我們在使用 WooCommerce 建立電子商務網站時,通常會有一個「我的帳號」My-account 頁面,讓使用者可以登入或註冊。然而,如果您的網站尚未定義這個頁面,或是使用者未登入時訪問此頁面,它會是一個比較陽春的登入/註冊頁面,這可能在視覺上不夠吸引人。本文將介紹一個簡單的程式碼,讓您能夠將這個跳轉頁面導向到一個更美觀的登入介面,特別是當結合了 LoginPress 這個外掛時。當然最暴力的還是用轉址或者轉址外掛強制轉,但是強制轉址沒有辦法判斷登入之情況,會造成無法瀏覽我的帳號這個頁面的問題,以下的解法可以完美避開這問題。
程式碼
首先,我們需要在 WordPress 主題的 functions.php
檔案中加入以下程式碼:
function custom_redirect_to_login() {
if ( is_page('my-account') && !is_user_logged_in() ) {
wp_redirect( home_url( '/wp-admin' ) );
exit;
}
}
add_action( 'template_redirect', 'custom_redirect_to_login' );
程式碼的運作原理
is_page('my-account')
:此條件判斷目前是否在「我的帳號」頁面。!is_user_logged_in()
:檢查使用者是否未登入。- 若以上兩個條件同時滿足,則執行
wp_redirect(home_url('/wp-admin'))
,將使用者重導到預設的 WordPress 管理員登入頁面。 exit
:確保在重導後終止原本的頁面載入。
透過這個簡單的自訂函數,當使用者嘗試訪問「我的帳號」頁面而未登入時,他們將被重新導向到一個更專業且美觀的登入頁面。這不僅提升了用戶體驗,也使您的 WooCommerce 網站看起來更加專業。
此外,當您安裝並啟用了 LoginPress 外掛後,您可以進一步自訂這個登入頁面的設計,使其與您網站的整體風格更加協調。LoginPress 提供了豐富的設計選項,包括自訂背景、文字、顏色等,讓您能夠創造出獨特且吸引人的登入體驗。
總之,透過簡單的程式碼調整與 LoginPress 的結合使用,您可以大幅提升 WooCommerce 網站的登入頁面美觀度和專業感,進而提升使用者的整體體驗。