我会这样做:
function wpse38285_wp_login( $user_login ) {
set_transient( $user_login, \'1\', 0 );
}
add_action( \'wp_login\', \'wpse38285_wp_login\' );
function wpse38285_wp_footer() {
global $current_user;
get_currentuserinfo();
if ( ! is_user_logged_in() )
return;
if ( ! get_transient( $current_user->user_login ) )
return;
$js = <<<JS
<script type="text/javascript">
jQuery(\'<div />\')
.html(\'<p>You are now logged in as <strong>$current_user->user_login</strong><br /><small>(click to close)</small></p>\')
.css({
\'width\': \'300px\',
\'position\': \'absolute\',
\'left\': \'50%\',
\'marginLeft\': \'-160px\',
\'top\': \'100px\',
\'backgroundColor\': \'#cdcdcd\',
\'textAlign\': \'center\',
\'padding\': \'10px\'
})
.appendTo(\'body\')
.on(\'click\', function() { jQuery(this).remove(); } );
</script>
JS;
echo $js;
delete_transient( $current_user->user_login );
}
add_action( \'wp_footer\', \'wpse38285_wp_footer\' );
为用户登录后设置永不过期的瞬态。如果为该用户设置了瞬态,请插入一些JavaScript代码并删除该瞬态。