如何讓 WordPress 登入後自動跳轉到指定頁面上?
想要客製化會員登入 WordPress 後的行為,例如說要跳到某一個指定的網頁,其實有很多個外掛可以使用,例如:https://www.paidmembershipspro.com/ ,但麻煩的就是常常會跟其他的會員外掛衝突,而且為了一個小功能,要一個龐大的會員系統來支撐,不太划算,建議可以自行寫寫看。
佈景主題 Functions.php
其實只要找到佈景主題下的 functions.php 然後加入以下程式碼即可
function my_login_redirect( $redirect_to, $request, $user ) { //檢查是否有建置會員制度 if (isset($user->roles) && is_array($user->roles)) { // 檢查是否為管理者 if(in_array('administrator', $user->roles)){ // 每次當入都到 woocommerce 的管理頁面中 $redirect_to = home_url('wp-admin/edit.php?post_type=shop_order'); } //確認是不是訂閱會員 else if (in_array('subscriber', $user->roles)) { // 導向指定頁面,程式範例是導向會員專屬頁面。 $redirect_to = home_url(); } } return $redirect_to; } add_filter( 'login_redirect', 'my_login_redirect', 10, 3 );
區分權限
管理員登入 WordPress 後,預設會到 /wp-admin 中,一般的使用者登入後通常是引導到首頁,或是他自己的介紹頁,要區分管理員或是一般使用者則可以使用 in_array(‘administrator’, $user->roles) 做判斷
// 判斷是否為管理員 in_array('administrator', $user->roles)
自己寫就是有一個好處,可以完全客制使用者行為,也比較輕量,真的有問題就問 ChatGPT 4 大神吧
近期留言