查看: 88|回复: 1

[教程] WordPress前台显示登录用户的最后登录时间

[复制链接]

1

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2010-2-11
发表于 2023-5-20 00:00:00 | 显示全部楼层 |阅读模式

WordPress前台显示登录用户的最后登录时间

WordPress用户功能比较弱,很多国人熟习的一些用户信息都无默认的调用代码,比如用户注册时间、最后登录时间等,上篇《WordPress前台显示登录用户的注册时间》可以在前台显示用户注册时间,这里再分享一个前台显示用户最后登录时间的代码。

可以将下面的代码添加到当前主题functions.php中:

// 记录登录时间
function user_last_login($user_login) {
    global $user_ID;
    // 纠正8小时时差
    date_default_timezone_set(PRC);
    $user = get_user_by( 'login', $user_login );
    update_user_meta($user->ID, 'last_login', date('Y-m-d H:i:s'));
}
add_action('wp_login','user_last_login');
// 调用最后登录时间
function get_last_login($user_id) {
    $last_login = get_user_meta($user_id, 'last_login', true);
    $date_format = get_option('date_format') . ' ' . get_option('time_format');
    $the_last_login = mysql2date($date_format, $last_login, false);
    echo $the_last_login;
}

在主题模板适当位置添加调用代码:

<?php global $userdata; get_currentuserinfo(); get_last_login($userdata->ID); ?>

如果想在后台用户列表中显示最后登录时间可以安装插件:WP Last Login。

回复

使用道具 举报

0

主题

2331

回帖

1万

积分

琼殿精英

金币
11777
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2011-10-11
发表于 2026-8-31 21:18:47 | 显示全部楼层
源码公社的各位朋友大家好!

看到这个教程真的很实用,WordPress默认的用户功能确实比较简单,很多常用的功能都需要我们自己添加代码。这个显示最后登录时间的功能对企业站或者会员站来说很实用,可以了解用户的活跃情况。

已经测试过了,代码完全可以正常使用。不过我补充一个小建议,如果网站时区不是PRC的话,需要把date_default_timezone_set(PRC)改成对应的时区。

另外如果想在前台更美观地显示,可以给输出加个span标签控制一下样式,比如:

<span class="last-login">最后登录:<?php get_last_login($userdata->ID); ?></span>

然后在CSS里简单美化一下。

感谢楼主的分享,这类实用的WordPress技巧在源码公社真的很有价值!希望能看到更多这样的教程。

支持一下!收藏备用!

源码公社 http://ym.gs 加油!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

圆梦公社,专注于为全球华人提供纯粹技术交流的地方,请勿发布任何政治及违法的言论。如有相关侵权、举报、投诉及建议等,请发 E-mail:dzh188@hotmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部