php - WordPress 将用户名和姓设置为导航链接名称
问题描述
今天我问自己“如何将当前用户的名字和姓氏设置为 WordPress 中的菜单项?”。所以我尝试了一下,只是问这个问题,因为我想与你分享我的解决方案!我希望它有时对你有所帮助。
解决方案
要将当前用户的名字和姓氏(或任何其他值)设置为导航,您首先需要在Menu
设置中的菜单链接标题中添加一个占位符。就我而言,它是{user_name}
:
完成此操作后,保存菜单并打开主题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;
推荐阅读
- javascript - 变量/参数未定义
- c# - .Net Core 类库 - 复制文件以发布 (nupkg)
- angular - 如果 'router-outlet' 是一个 Angular 组件,那么验证它是这个模块的一部分
- flutter - Flutter TextFormField 禁用键盘但允许接受输入
- c++ - 为什么破坏顺序与构造顺序相同,使用静态对象(C++)?
- html - 如何模糊除悬停在 CSS 和 HTML 中的元素之外的所有内容
- angular - 不能以角度绑定
- c++ - Microsoft HTTP SERVER API 环境要求
- dpdk - pktgen 找不到 Mellanox 端口
- java - 如何正确旋转位图?