WooCommerce – Mein Konto – Abmelden und zur Startseite weiterleiten

Lesezeit: 2 Minuten

Benutzeravatar von Rich72
Rich72

Sobald sich ein Benutzer auf seiner Seite „Mein Konto“ auf WooCommerce befindet, möchte ich, dass er sich abmeldet und zu meiner Homepage weitergeleitet wird, anstatt auf der Anmeldeseite zu landen.

Benutzeravatar von mujuonly
mujunur

add_action('wp_logout','auto_redirect_after_logout');

function auto_redirect_after_logout(){

  wp_redirect( home_url() );
  exit();

}

  • Ich habe dies in meine function.php-Datei hinzugefügt. Als ich auf „Mein Konto“ klickte, wurde die Anmeldeseite nicht ausgelöst. Tatsächlich ist nichts abgefeuert worden. Ist es nicht so einfach, diesen Code in die Datei function.php einzufügen?

    – Rich72

    26. Februar 2019 um 11:26 Uhr

  • Ich habe den Code in mein Child-Theme eingefügt. apexgray.co.uk/my-account

    – Rich72

    26. Februar 2019 um 11:30 Uhr


  • Ich werde den Code wieder in die Datei function.php einfügen und Sie wissen lassen …

    – Rich72

    26. Februar 2019 um 11:32 Uhr

  • Vielleicht war meine Frage nicht klar. Wenn sich der Benutzer in sein Konto eingeloggt hat und fertig ist, möchte ich idealerweise, wenn er auf Abmelden klickt, dass er zur Startseite geht.

    – Rich72

    26. Februar 2019 um 11:37 Uhr

  • Ich denke, meine ursprüngliche Frage war verwirrend …!

    – Rich72

    26. Februar 2019 um 11:38 Uhr

Nur um die ursprüngliche Antwort zu ergänzen, kann die Verwendung von exit zum Beenden des Skripts Woocommerce daran hindern, nach dem Abmelden die erforderlichen Schritte auszuführen, z. B. das Löschen der Cookies (Warenkorbelemente in Cookies). Ihre beste Wette ist also die Verwendung logout_urlso filtern.

function redirect_after_logout($logout_url, $redirect) {
    return $logout_url . '&redirect_to=' . home_url();
}
add_filter('logout_url', 'redirect_after_logout', 10, 2);

Getestet in Woocommerce Version 5.4.1 ✅

Benutzeravatar von Ahmet Kaptan
Ahmet Kaptan

Wenn Sie herausfinden, wie Sie die WooCommerce-Abmeldebestätigung umgehen können, können Sie Folgendes tun:

function wooHook_woocommerce_logout_bypass() {
    global $wp;

    if ( isset( $wp->query_vars['customer-logout'] ) ) {
        wp_redirect( str_replace( '&', '&', 
          wp_logout_url( wc_get_page_permalink( 'hesabim' ) ) ) );
        exit;
    }
}

add_action( 'template_redirect', 'wooHook_woocommerce_logout_bypass' );

1435150cookie-checkWooCommerce – Mein Konto – Abmelden und zur Startseite weiterleiten

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy