我正在尝试显示用户上次访问,而不是最后一次登录。 我已经看到了这个代码,我现在已经意识到,完全符合预期,显示最后一次登录,这不是我想要显示的内容,因为例如,我自己已经被记录了一周,当显示它时,它给人的印象是我没有在网站上超过一周(Last Seen :),这是不正确的。 我正在尝试显示上次在网站上看到用户的情况。 有什么想法吗?
http://www.wpbeginner.com/plugins/how-to-show-users-last-login-date-in-wordpress/
process.hrtime()
答案 0 :(得分:1)
您正在钩子“wp_login”上运行代码,当然只有在您每次刷新页面时登录而不是运行时才会运行。每次登录用户刷新站点时,以下代码都应该有效:
<?php
/**
* Capture timestamp of active user
*
*/
function user_last_seen() {
if ( is_user_logged_in() ) {
update_user_meta( get_current_user_id(), 'last_seen', time() );
} else {
return;
}
}
add_action( 'wp_footer', 'user_last_seen', 10 );
function wp_lastseen() {
$last_seen = get_the_author_meta('last_seen');
$the_last_seen_date = human_time_diff($last_seen);
return $the_last_seen_date;
}
add_shortcode('lastseen','wp_lastseen');
?>
<?php echo 'Last seen: '. do_shortcode('[lastseen]') .' ago'; ?>
每次用户刷新您网站中的网页时,此脚本都会更新上一个短信代码日期。