Отображение даты и времени последнего входа в WordPress

#wordpress

#wordpress

Вопрос:

Я добавил код для отображения даты и времени последнего входа в систему на моем веб-сайте (интерфейс).Но он отображается только как 26 минут 9 секунд и т.д., Но мне нужно отображать дату и время в формате часов, минут и секунд. Вот код:

 function user_last_login( $user_login, $user ) {
update_user_meta( $user->ID, 'last_login', time() );
}
add_action( 'wp_login', 'user_last_login', 10, 2 );

function lastlogin() {
$last_login = get_the_author_meta('last_login');
$the_login_date = date('F j, Y g:i a', $last_login);
return $the_login_date;
}

add_shortcode('lastlogin','lastlogin');
 

Комментарии:

1. Прежде всего, попробуйте вернуться $last_login без использования human_time_diff lastlogin функции inside. Вы должны увидеть некоторое целое число, подобное 1609432337 . Затем используйте date('H:m:s', $last_login) для получения отформатированного времени;

2. @IhorVyspiansky не дает вам понять, что нужно изменить

3. Возможно, вам не нужно использовать human_time_diff , вместо этого попробуйте date . Документы здесь php.net/manual/en/function.date.php

4. @IhorVyspiansky я изменил, чтобы он отображал последнее обновление: 15:12:02 $last_login = get_the_author_meta(‘last_login’); $the_login_date = дата (‘H: m: s’, $ last_login);

5. @IhorVyspiansky благодарит, теперь все работает нормально

Ответ №1:

 function user_last_login( $user_login, $user ) {
 update_user_meta( $user->ID, 'last_login', date( current_time( 'timestamp' )) );
}
add_action( 'wp_login', 'user_last_login', 10, 2 );
function lastlogin() {  
$last_login = get_the_author_meta('last_login');
$the_login_date = date('F j, Y, g:i a', $last_login);
return $the_login_date;
}
add_shortcode('lastlogin','lastlogin');