将登录/注销添加到Wordpress菜单
我正在试图找出如何将登录/注销添加到菜单中。当我将此代码添加到wordpress标题时,内容和侧边栏将消失。如何在不丢失页面其余部分的情况下将登录/注销添加到菜单中。我尝试过在设置菜单中添加它,但它与我正在使用的主题不兼容将登录/注销添加到Wordpress菜单,wordpress,woocommerce,Wordpress,Woocommerce,我正在试图找出如何将登录/注销添加到菜单中。当我将此代码添加到wordpress标题时,内容和侧边栏将消失。如何在不丢失页面其余部分的情况下将登录/注销添加到菜单中。我尝试过在设置菜单中添加它,但它与我正在使用的主题不兼容 <ul> <?php $myaccount_page_id = get_option( 'woocommerce_myaccount_page_id' ); if ( $myaccount_page_id && !is_user_logge
<ul>
<?php
$myaccount_page_id = get_option( 'woocommerce_myaccount_page_id' );
if ( $myaccount_page_id && !is_user_logged_in()) {
$myaccount_page_url = get_permalink( $myaccount_page_id );
?>
<li><a href="<?php echo $myaccount_page_url; ?>" class="login-header"><?php _e('Login', 'woocommerce'); ?></a></li>
<?php
}
$myaccount_page_id = get_option( 'woocommerce_myaccount_page_id' );
if ( $myaccount_page_id && is_user_logged_in()) {
$logout_url = wp_logout_url( get_permalink( $myaccount_page_id ) );
if ( get_option( 'woocommerce_force_ssl_checkout' ) == 'yes' )
$logout_url = str_replace( 'http:', 'https:', $logout_url );
?>
<li><a href="<?php echo $logout_url; ?>" class="login-header"><?php _e('Logout', 'woocommerce'); ?></a></li>
<?php } ?>
<li><a href="<?php echo $woocommerce->cart->get_cart_url(); ?>" class="cart-header"><?php _e('Shopping Cart', 'woocommerce'); ?> <?php echo sprintf(_n('(%d)', '(%d)', $woocommerce->cart->cart_contents_count, 'woothemes'), $woocommerce->cart->cart_contents_count);?></a></li>
<li><a href="<?php echo $woocommerce->cart->get_checkout_url(); ?>" class="check-header"><?php _e('Checkout', 'woocommerce'); ?></a></li>
</ul>
如果您使用类似的插件,只需在菜单中创建登录页面的链接即可。如果此人未登录,则显示“登录”;如果此人已登录,则显示“注销”。希望这有帮助 如果您使用类似的插件,只需在菜单中创建登录页面的链接即可。如果此人未登录,则显示“登录”;如果此人已登录,则显示“注销”。希望这有帮助 更简单的方法是更改菜单结构
登录(下拉菜单)
- 密码丢失
- 更改密码
- 密码丢失
- 注销
希望它能帮助有需要的人更简单的方法是改变菜单结构 登录(下拉菜单)
- 密码丢失
- 更改密码
- 密码丢失
- 注销
/我的帐户/有许多代码不起作用。我刚找到一个完美的。使用以下命令启动functions.php:
add_filter('wp_nav_menu_items','my_account_loginout_link',10,2);
/**
*将我的帐户登录/注销添加到菜单
*
*@见https://support.woothemes.com/hc/en-us/articles/203106357-Add-Login-Logout-Links-To-The-Custom-Primary-Menu-Area
*/
函数my_account_loginout_link($items,$args){
如果(是否已登录用户()&&&$args->theme\u location=='top'){//更改主题位置菜单以适应
$items.='';//更改注销链接,在这里它转到'shop',您可能想将其放到'myaccount'
}
elseif(!is_user_logged_in()&&&$args->theme_location=='top'){//更改主题位置菜单以适应
$items.='';
}
退回$items;
}
有许多代码不起作用。我刚找到一个完美的。使用以下命令启动functions.php:
add_filter('wp_nav_menu_items','my_account_loginout_link',10,2);
/**
*将我的帐户登录/注销添加到菜单
*
*@见https://support.woothemes.com/hc/en-us/articles/203106357-Add-Login-Logout-Links-To-The-Custom-Primary-Menu-Area
*/
函数my_account_loginout_link($items,$args){
如果(是否已登录用户()&&&$args->theme\u location=='top'){//更改主题位置菜单以适应
$items.='';//更改注销链接,在这里它转到'shop',您可能想将其放到'myaccount'
}
elseif(!is_user_logged_in()&&&$args->theme_location=='top'){//更改主题位置菜单以适应
$items.='';
}
退回$items;
}
我喜欢这样简单的答案:)我喜欢这样简单的答案:)
function woocommerce_nav_menu_items( $items, $args ) {
if ( ! is_user_logged_in() ) {
$hide_pages = array();
$hide_pages[] = 20;
$hide_pages = apply_filters( 'woocommerce_logged_out_hidden_page_ids', $hide_pages );
foreach ( $items as $key => $item ) {
if ( ! empty( $item->object_id ) && ! empty( $item->object ) && in_array( $item->object_id, $hide_pages ) && $item->object == 'page' ) {
unset( $items[ $key ] );
}
}
} else {
$hide_pages = array();
$hide_pages[] = 18;
$hide_pages = apply_filters( 'woocommerce_logged_out_hidden_page_ids', $hide_pages );
foreach ( $items as $key => $item ) {
if ( ! empty( $item->object_id ) && ! empty( $item->object ) && in_array( $item->object_id, $hide_pages ) && $item->object == 'page' ) {
unset( $items[ $key ] );
}
}
}
return $items;
}
add_filter( 'wp_nav_menu_items', 'my_account_loginout_link', 10, 2 );
/**
* Add WooCommerce My Account Login/Logout to Menu
*
* @see https://support.woothemes.com/hc/en-us/articles/203106357-Add-Login-Logout-Links-To-The-Custom-Primary-Menu-Area
*/
function my_account_loginout_link( $items, $args ) {
if (is_user_logged_in() && $args->theme_location == 'top') { //change your theme location menu to suit
$items .= '<li><a class="nav-link" href="'. wp_logout_url( get_permalink( wc_get_page_id( 'shop' ) ) ) .'">Sair</a></li>'; //change logout link, here it goes to 'shop', you may want to put it to 'myaccount'
}
elseif (!is_user_logged_in() && $args->theme_location == 'top') {//change your theme location menu to suit
$items .= '<li><a class="nav-link" href="' . get_permalink( wc_get_page_id( 'myaccount' ) ) . '">Entrar</a></li>';
}
return $items;
}