Alapból a WordPress bejelentkezést követően a profil oldalra irányít át. Ezt néhány bővítmény módosíthatja (pl a WooCommerce a My account oldalra fog irányítani), így előbb-utóbb előállhat az a helyzet, hogy szeretnénk a saját kezünkbe venni az (át)irányítást és megmondani, hogy bejelentkezés után hova irányítsa a felhasználót az oldal.
Ezt a következő egyszerű snippet segítségével tehetjük meg:
// Felhasználó átirányítása bejelentkezés után a főoldalra
add_filter( 'login_redirect', function ( $redirect_to, $request, $user ) {
$redirect_to = home_url();
return $redirect_to;
}, 10, 3 );
// Felhasználó átirányítása bejelentkezés után az /akciok oldalra
add_filter( 'login_redirect', function ( $redirect_to, $request, $user ) {
$redirect_to = home_url('akciok');
return $redirect_to;
}, 10, 3 );
Előfordulhat, hogy a felhasználókat a user-role alapján szeretnénk átirányítani. Például az adminisztrátorokat nem szeretnénk máshova irányítani, de a felhasználókat a /shop oldalra szeretnénk irányítani:
// A nem admin felhasználók átirányítása bejelentkezés után a shop oldalra
add_filter( 'login_redirect', function ( $redirect_to, $request, $user ) {
if (user_can($user, 'manage_options)){
$redirect_to = get_permalink( woocommerce_get_page_id('shop' ));
}
return $redirect_to;
}, 10, 3 );
Vélemény, hozzászólás?
Hozzászólás küldéséhez be kell jelentkezni.