您的浏览器需要启用 JavaScript 才能正常访问此网站。
萨龙网络
登录
首页-WordPress文章-WordPress-正文

WordPress 获取用户 ID 的8种方法

萨龙龙萨龙龙WordPress4年前005.11W
在 WordPress 主题的开发过程中,获取用户 ID 的频率是很高的,可在 WordPress 中查看用户信息,也可以通过代码直接获取。

一、在 WordPress 后台区域找到用户 ID

这是一个非常简单的方法,需要有后台管理权限的用户才能查看。 1、登录 WordPress  后台 2、转到用户——所有用户列表页面 3、编辑用户 4、在当前页面链接中的 user_id= 后面的数字即是用户的 ID

二、获取当前用户 ID(也可以获取用户名,Email 等)

获取当前登录用户ID的最佳方法是使用get_current_user_id()函数。
$current_user_id = get_current_user_id();
与wp_get_current_user()方法相同的函数:
$current_user = wp_get_current_user();
$current_user_id = $current_user->ID;
get_current_user_id()的用法对我来说似乎更简单,但你可以使用任何你想要的方式,因为在代码中它们是相同的。 获取用户其它信息:
$user_email = $current_user->user_email;
$first_name = $current_user->first_name;
$display_name = $current_user->display_name;

三、通过 Email 获取用户 ID

可使用 get_user_by() 函数获取用户信息
$the_user = get_user_by('email', 'admin@salongweb.com');
$the_user_id = $the_user->ID;
反过来,我们也可以通过 ID 获取用户的 Email
$the_user = get_user_by( 'id', 1 ); // 用户 ID 为1
echo $the_user->user_email;

四、通过用户名获取用户 ID

同样是使用 get_user_by() 函数获取用户信息
$the_user = get_user_by('login', 'salongweb');
$the_user_id = $the_user->ID;
反过来,我们也可以通过 ID 获取用户的用户名,和通过 ID 获取用户 Email 是一样的。 五、通过姓名名获取用户 ID 打印所有姓为“sa”的用户的 ID:
global $wpdb;
$users = $wpdb->get_results("SELECT user_id FROM $wpdb->usermeta WHERE meta_key = 'first_name' AND meta_value = 'sa'");
if ($users) {
    foreach ($users as $user) {
        echo $user->user_id;
    }
} else {
    echo '没有该姓的用户。';
}
打印所有名字为“longlong”的用户的 ID:
global $wpdb;
$users = $wpdb->get_results("SELECT user_id FROM $wpdb->usermeta WHERE meta_key = 'first_name' AND meta_value = 'longlong'");
if ($users) {
    foreach ($users as $user) {
        echo $user->user_id;
    }
} else {
    echo '没有该名字的用户。';
}
如果您想通过任何用户元值查找用户ID,那么上面的代码可以工作。只需将meta_keymeta_value替换为您需要的。 当然,在get_user_meta( $id, $meta_key, true)函数的帮助下,你也可以得到用户的姓和名以及任何meta。

六、通过文章 ID 获取作者 ID

在这种情况下,您可以从WP_Post对象获取用户ID。
$my_post = get_post( $post_id ); // 获取文章 ID 获取文章数据
echo $my_post->post_author; // 打印出作者 ID
也可以使用 get_post_field() 函数来直接获取作者的 ID
$author_id = get_post_field('post_author', $post_id);

七、从 WooCommerce 的订单中获取客户 ID

有两种不同的方法,第一种是通过订单元数据获取客户 ID:
$customer_id = get_post_meta( 123, '_customer_user', true); // 123 是订单 ID
第二个可通过WC_Order类来获取,WooCommerce 版本需3.0 +。
$order = wc_get_order( 123 ); // 123 是订单 ID
$customer_id = $order->get_customer_id(); //  或者 $order->get_user_id() 是一样的

八、将用户 ID 添加到 WordPress 用户列表的列中

这对于管理员来说,查看用户 ID 是相当的方便快捷,可将如下代码添加到 WordPress 主题函数文件 functions.php 中
/*
 * 添加用户列表栏目
 */
function salong_user_id_column($columns)
{
    $columns['user_id'] = 'ID';
    return $columns;
}
add_filter('manage_users_columns', 'salong_user_id_column');

/*
 * 栏目内容
 */
function salong_user_id_column_content($value, $column_name, $user_id)
{
    if ('user_id' == $column_name)
        return $user_id;
    return $value;
}
add_action('manage_users_custom_column',  'salong_user_id_column_content', 10, 3);
标签:
本文原创,作者:萨龙龙,其版权均为萨龙网络所有。
如需转载,请注明出处:https://salongweb.com/wordpress-get-user-id.html
萨龙龙

萨龙龙

侠客
一个平平常常的人,热爱生活、旅行和摄影,骑行去过西藏,一直计划再去。14年从江西骑行来到大理,现栖居于洱海边,食人间烟火,过简单生活,做简约设计!
1412.36M457.17W4.42W
加载中…
分享:
WordPress 主题获得评论深度的2种方法
WordPress 主题获得评论深度的2种方法上一篇
WordPress 主题 MNews Pro 5.2 投稿新增可插入音视频功能下一篇
WordPress 主题 MNews Pro 5.2 投稿新增可插入音视频功能
相关文章
总数:114

WordPress获取不同用户、类型文章和自定义字段下的文章数量

萨龙网络开发的 MNews 主题中,集成了个人中心功能,需要获取文章、视频、下载、专题和商城的文章数量,这个是比较简单,使用wp_count_p…
萨龙龙萨龙龙WordPress7年前001.12W0

Woocommerce+Buddypress+Bbpress商城社区论坛头像本地化

萨龙网络Purity主题是集成了Woocommerce+Buddypress+Bbpress商城社区论坛,因为www.gravatar.com头…
萨龙龙萨龙龙Bbpress, Buddypress, WooCommerce, WordPress10年前002.05W0

WordPress获取当前分类的顶级分类ID

在开发吃货主题Chihuo时,要对产品和文章进行筛选,在一级分类下显示所有一级分类和当前一级分类下的所有二级分类,在二级分类下,显示所有一级分类…
萨龙龙萨龙龙WordPress9年前001.87W0

WordPress 添加菜单项目描述

WordPress 能够在自定义菜单中存储每个菜单项的描述,默认情况下,这些描述不会显示在前端菜单中,需要为相应的菜单增加显示描述的功能。 一…
萨龙龙萨龙龙WordPress7年前001.47W0

禁用 WordPress 裁剪功能包括自动生成的 768 像素图片

WordPress 媒体库是很强大、管理媒体相当方便,如果媒体多就给数据库增加了压力,而且很多媒体是不需要上传到媒体库,上传的图片会增加很多无用…
萨龙龙萨龙龙WordPress8年前001.36W0

WordPress 功能函数—— activate_plugin(已激活的插件不会再次尝试激活)

描述 已激活的插件不会再次尝试激活。 它的工作方式是在尝试包含插件文件之前将重定向设置为错误。如果插件失败,则重定向…
萨龙龙萨龙龙WordPress Functions7年前001.37W0

WordPress MU多站点网络克隆新站点插件Multisite Cloner

Wordpress MU多站点已经使用很久,在本地测试和主机上安装的都是多站点,极大的方便网站搭建以及主题开发。当我们有多个站点,需要创建的新站…
萨龙龙萨龙龙WordPress10年前002.05W0

WooCommerce为购物车和结算添加附加费 – 使用费用API

为所有交易添加基于百分比的附加费 /** * 添加1%的附加费到你的购物车和结算页面 * 更改百分比以将附加费设置为适合的…
萨龙龙萨龙龙WooCommerce6年前001.20W0

WordPress附件函数wp_get_attachment_metadata简码获取照片EXIF信息

自动获取照片的EXIF信息,很多大型的摄影论坛都有这个功能,对于摄影爱好者来说是一个很实用的功能。萨龙龙开发的Deephoto主题和Neatim…
萨龙龙萨龙龙WordPress10年前001.41W0

移除 WooCommerce 商城插件编辑产品中的产品数据相关 tabs

WooCommerce 插件默认为编辑产品页面提供了产品数据 TABS,默认包括:常规、库存、配送、联锁产品、属性、高级等模块,功能强大而实用。…
萨龙龙萨龙龙WooCommerce8年前001.39W0

WordPress+Nuxt3前后端分离项目,实现不限层级的多维数组菜单

使用 WordPress+Nuxt3做前后端分离项目时,菜单需要多维数组,且不限层级,可以使用递归函数很方便地将 wp_get_nav_menu…
萨龙龙萨龙龙WordPress3年前213.70W0

WordPress+Nuxt.js+Vue.js开发的前端node项目被停止的处理方案

Slhao Pro主题前端上线后每天能收到宝塔的提示,说项目已经停止,找了很久没有发现问题。在查看node项目网站日志中的响应日志和错误日志时,…
萨龙龙萨龙龙Nuxt.js, Vue.js, WordPress2年前111.15W0
评论表单游客 您好,欢迎参与讨论。
加载中…
评论列表
总数:0
萨龙网络
没有相关内容