WordPress将用户的名字和姓氏设置为导航链接名称

时间:2018-11-26 23:20:50

标签: php html arrays wordpress

今天我问自己“如何在WordPress中将当前用户的姓氏和姓氏设置为菜单项?”。因此,我尝试了一下,只问了这个问题,因为我想与您分享我的解决方案!希望对您有所帮助。

1 个答案:

答案 0 :(得分:1)

要在导航中设置当前用户的名字和姓氏(或任何其他值),首先需要在Menu设置中的菜单链接标题中添加一个占位符。就我而言,它是{user_name}

enter image description here


完成此操作后,保存菜单并打开主题functions.php文件。现在,我为您提供了一些代码。将其复制到您的functions.php文件中,然后保存并上传到您的服务器中:

/**
 * Set user firstname and lastname into navigation
 */
add_filter( 'wp_nav_menu_objects', 'set_navigation_user_name' );
function set_navigation_user_name( $menu_items ) {
    foreach ( $menu_items as $menu_item ) {
        if ( '{user_name}' === $menu_item->title ) {
            //Get user and his name
            $current_user   = wp_get_current_user();
            $user_firstname = $current_user->user_firstname;
            $user_lastname  = $current_user->user_lastname;

            $menu_item->title = $user_firstname . ' ' . $user_lastname;
        }
    }

    return $menu_items;
}

您可以为占位符设置任何可能的值。例如,当您要将用户电子邮件设置为此占位符时,可以执行以下操作:

$menu_item->title = $current_user->user_email;