Cách chuyển hướng người dùng sau khi đăng nhập thành công

Ngày đăng: 17 - 03 - 2022 Lượt xem: 77 lượt

Khi phát triển website về thành viên, một trong những vấn đề phổ biến nhất bạn cần nghĩ đến là quản lý người dùng.

Có hàng tá plugin đi kèm với hàng loạt các tính năng khác nhau để quản lý người dùng. Tuy nhiên nếu bạn chỉ cần một vài tính năng đơn giản, thì bạn nên suy nghĩ đến việc tự phát triển tính năng đó.

Hôm nay, mình muốn hướng dẫn cách chuyển hướng người dùng đến các trang khác nhau sau khi họ đăng nhập thành công vào trang WordPress của bạn.

Chuyển hướng người dùng sau khi đăng nhập

Chuyển hướng người dùng sau khi đăng nhập thành công

Mình sẽ sử dụng đến một filter hook có tên là login_redirect. Hook này rất hữu ích trong việc thực hiện chuyển hướng sau khi đăng nhập, vì vậy mình sẽ sử dụng hook này như sau:

add_filter( 'login_redirect', 'hk_login_redirect', 10, 3 );

Sau khi thêm hook filter, mình sẽ tạo hàm gọi lại được tham chiếu trong hook ở trên có tên hk_login_redirect.

function hk_login_redirect() {

    global $user;

    if ( isset( $user->roles ) && is_array( $user->roles ) ) {

        if ( in_array( 'administrator', $user->roles ) ) {

           // redirect defaukt

           return $redirect_to;

        } else {

           return home_url();

        }

    } else {

        return $redirect_to;

    }

}

Bạn phải thay thế biến $redirect_to bằng URL mà bạn muốn chuyển hướng người dùng sau khi họ đăng nhập thành công.

Bạn có thể bỏ đoạn code trên vào file functions.php hoặc tạo nó như một plugin độc lập để quản lý chuyển hướng của người dùng sau khi đăng nhập.

Đoạn code hoành chỉnh sẽ như bên dưới:

add_filter( 'login_redirect', 'hk_login_redirect', 10, 3 );

function hk_login_redirect() {

    global $user;

    if ( isset( $user->roles ) && is_array( $user->roles ) ) {

        if ( in_array( 'administrator', $user->roles ) ) {

        // redirect defaukt

        return $redirect_to;

        } else {

           return home_url();

        }

    } else {

        return $redirect_to;

    }

}

Tổng kết

Mình hy vọng các bạn có thể áp dụng bài viết này trong quá trình phát triển theme hoặc plugin WordPress của mình. Đặc biệt khi bạn cần tạo một website liên quan đến quản lý người dùng WordPress.

Nếu các bạn thấy bài viết này hữu ích, hãy bình luận và chia sẻ bài viết này. Ngoài ra, bạn có thể theo dõi chuyên mục Thủ thuật WordPress và follow Facebook để biết thêm nhiều kiến thức mới nha.

0 0 votes
Đánh giá bài viết

guest
0 Góp ý
Inline Feedbacks
View all comments

Bài viết liên quan

Hướng dẫn custom Bảng tin trong admin WordPress

Hướng dẫn custom Bảng tin trong admin WordPress

11 - 05 - 2022

Bạn có nghĩ rằng bảng tin trong admin WordPress thật lộn xộn và có nhiều phần không cần thiết...

Cách đặt hình ảnh đại diện mặc định trong WordPress

Cách đặt hình ảnh đại diện mặc định trong WordPress

08 - 05 - 2022

Bạn có muốn đặt hình ảnh đại diện mặc định trong WordPress không? Nhiều theme sử dụng hình ảnh đại...

Hiển thị ngày đăng ký của người dùng vào trang tất cả người dùng

Hiển thị ngày đăng ký của người dùng vào trang tất cả người dùng

06 - 05 - 2022

Giả sử rằng có một cuộc tấn công spam vào trang web của bạn. Có gần 50 người dùng...

Làm việc với DateTime trong WordPress

Làm việc với DateTime trong WordPress

04 - 05 - 2022

Một năm trước, mình phát triển một plugin liên quan đến thời gian biểu. Và mình sớm nhận ra...

Tạo form tìm kiếm bằng shortcode trong WordPress

Tạo form tìm kiếm bằng shortcode trong WordPress

02 - 05 - 2022

Bạn muốn thêm form tìm kiếm vào bài viết, trang, hoặc sidebar của website? Thêm form tìm kiếm vào nội...

Thêm cột ảnh đại diện trong trang quản trị danh sách bài viết

Thêm cột ảnh đại diện trong trang quản trị danh sách bài viết

28 - 04 - 2022

Bạn có muốn hiển thị ảnh đại diện ra ngoài trang danh sách bài viết không? Hôm nay mình sẽ...

0
Would love your thoughts, please comment.x