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

WordPress 获取用户 ID 的8种方法

萨龙龙萨龙龙WordPress5年前005.26W
在 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_key和meta_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年从江西骑行来到大理,现栖居于洱海边,食人间烟火,过简单生活,做简约设计!
1422.49M457.25W4.42W
加载中…
分享:
WordPress 主题获得评论深度的2种方法
WordPress 主题获得评论深度的2种方法上一篇
WordPress 主题 MNews Pro 5.2 投稿新增可插入音视频功能下一篇
WordPress 主题 MNews Pro 5.2 投稿新增可插入音视频功能
相关文章
总数:115

WordPress 出现 Allowed memory size of 134217728 bytes exhausted 错误如何修复

当出现 "Allowed memory size of 134217728 bytes exhausted" 错误时,意味着 PHP 内存限制被…
萨龙龙萨龙龙WordPress3年前002.64W0

WordPress主题使用jQuery插件Isotope添加作品集筛选功能

上一篇文章我们介绍了Isotope,功能强大,效果出众的jQuery插件,但是文章中的代码并不能使用在项目中,所以今天通过Wordpress主题…
萨龙龙萨龙龙jQuery插件, WordPress10年前002.05W0

让SI CAPTCHA Anti-Spam插件支持WooCommerce注册表单验证码

萨龙网络使用的主题Purity最新版本弃用了Buddypress社区插件,这样注册表单只能使用WooCommerce商城自带的,验证码还是使用S…
萨龙龙萨龙龙WooCommerce, WordPress10年前001.75W0

在WooCommerce中添加“立即购买”按钮直接跳转到结算页面

MNews 主题集成了 WooCommerce 商城插件,有些用户要求增加一个『立即购买』按钮,这篇文章介绍下如何在WooCommerce中添加…
萨龙龙萨龙龙WooCommerce8年前003.29W0

修改Woocommerce商品固定链接其它自定义文章类型适用

在更新Concise主题时集成了前端用户中心和商城插件,发现插件中为商城产品文章设置好了固定链接,所以把萨龙网络的作品集与商城的两种自定义类型的…
萨龙龙萨龙龙WooCommerce11年前001.55W0

WooCommerce 通过woocommerce_cart_item_thumbnail钩子修改购物车缩略图

在开发基于 WooCommerce 的商城主题时,我们一般会将模板文件添加到主题中来进行修改,对于有钩子或接口的地方,就没有必要再修改模板代码了…
萨龙龙萨龙龙WooCommerce6年前001.78W0

禁用管理员通知『连接您的店铺到 WooCommerce.com 接受扩展更新和支持』

WooCommerce 后台对管理员的通知『连接您的店铺到 WooCommerce.com 接受扩展更新和支持』,是3.3.1版本后出来了,新的…
萨龙龙萨龙龙WooCommerce7年前001.27W0

WordPress 限制上传媒体的文件类型

MNews 和 LensNews 主题都有前台投稿的功能,用户可以上传图片等文件,管理员是不希望用户上传任意的媒体文件,这时我们可以对用户上传的…
萨龙龙萨龙龙WordPress8年前001.40W0

解决网站嵌入优酷视频堆叠顺序的问题

很多网站都会插入优酷或其它网站的在线视频到自己的网站中,默认情况下优酷视频的堆叠顺序并不受CSS样式z-index属性的影响,在视频页面有滚动、…
萨龙龙萨龙龙WordPress10年前001.45W0

WordPress 文章查询类 WP_Query 如何获取序列化数组中的文章

还是在开发导航类主题 Slhao 的时候遇到的问题,主题使用 Codestar Framework 专业版选项框架,文章的 Metabox 选项…
萨龙龙萨龙龙WordPress7年前001.34W0

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

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

Nuxt.js Headless WordPress 项目中的数据缓存优化策略

在 Headless WordPress + Nuxt.js 的架构中,WordPress 作为内容后端通过 REST API 提供数据,Nux…
萨龙龙萨龙龙WordPress3个月前001.20K0
评论表单游客 您好,欢迎参与讨论。
加载中…
评论列表
总数:0
萨龙网络
没有相关内容