当会员登录wordpress时,如何在菜单上显示用户名

shu*_*sir 3 wordpress

在我的网站上,我做了两个不同的菜单.一个是访问者,另一个是登录成员.这是我用过的代码 -

<php?
if( is_user_logged_in() ) {
$menu = 'Login Menu';}
else {
$menu = 'Main Menu'; }
wp_nav_menu( array( 'menu' => $menu, 'container_class' => 'menu-header', 'theme_location' => 'primary' ) ); ?>
Run Code Online (Sandbox Code Playgroud)

现在在"主菜单"上我有一个名为"注册"的按钮.还有一个名为"登录"的按钮.当会员登录时,我想让这个按钮分别显示为"欢迎[登录会员的姓名]"和"退出".据我所知,这个代码将在"登录菜单"下面,那么我该怎么办呢那个?

The*_*pha 5

将以下代码粘贴到您的 functions.php

add_filter( 'wp_nav_menu_items', 'my_custom_menu_item');
function my_custom_menu_item($items)
{
    if(is_user_logged_in())
    {
        $user=wp_get_current_user();
        $name=$user->display_name; // or user_login , user_firstname, user_lastname
        $items .= '<li><a href="">Welcome '.$name.'</a></li>';
    }
    return $items;
}
Run Code Online (Sandbox Code Playgroud)

  • 是的@Apalabrados,只需将`$items .= '&lt;li&gt;&lt;a href=""&gt;Welcome '.$name.'&lt;/a&gt;&lt;/li&gt;';` 改为`return '&lt;li&gt;&lt;a href =""&gt;欢迎 '.$name.'&lt;/a&gt;&lt;/li&gt;'.$items`。 (2认同)