Created

Embed URL

HTTPS clone URL

SSH clone URL

You can clone with HTTPS or SSH.

Download Gist

WooCommerce add login/logout buttons to wordpress menu

View gist:4015657
1 2 3 4 5 6 7 8 9 10
add_filter( 'wp_nav_menu_items', 'add_loginout_link', 10, 2 );
function add_loginout_link( $items, $args ) {
if (is_user_logged_in() && $args->theme_location == 'primary') {
$items .= '<li><a href="'. wp_logout_url( get_permalink( woocommerce_get_page_id( 'myaccount' ) ) ) .'">Log Out</a></li>';
}
elseif (!is_user_logged_in() && $args->theme_location == 'primary') {
$items .= '<li><a href="' . get_permalink( woocommerce_get_page_id( 'myaccount' ) ) . '">Log In</a></li>';
}
return $items;
}

use wc_get_page_id(), because woocommerce_get_page_id() deprecated

Where exactly to add this function - becoz i added it into functions file and it says wc_get_page_id function not defined

ok i think i am using older version of woo it works thanks

I just use:
Logout Link: /?customer-logout=true
Login: /my-account/

Thanks, more filtered
Add to functions.php
add_filter( 'wp_nav_menu_items', 'add_loginout_link', 10, 2 );
function add_loginout_link( $items, $args ) {
if (is_user_logged_in()) {
$items .= '

Log out';
}
elseif (!is_user_logged_in()) {
$items .= 'Log in';
}
return $items;
}

Hi ait1,

Can you help me?

In my theme (replay theme (themeforest)) my login logout menu for woocomerce dont work... :(::(

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.