Как вывести дату регистрации пользователей в WordPress

Как вывести дату регистрации пользователей в WordPress

Хотите вывести дату регистрации пользователей в WordPress? Многие популярные сайты сообществ и форумы отображают дату регистрации пользователей в их профилях (к примеру, «участник с 2015 года»). В данной статье мы покажем вам, как вывести дату регистрации пользователей в WordPress.

registration

Где это может пригодиться?

Некоторые из вас просто хотели бы вывести дату регистрации пользователей в отдельном столбце страницы Users (Пользователи) в панели администратора. С помощью этого шага вы сможете видеть, когда пользователь присоединился к вашему сайту, и сможете отсортировать пользователей по дате их регистрации.

Еще один хороший вариант использования – вывод даты регистрации пользователей на странице «Edit Profile» (Редактировать профиль). Это позволит администратору и пользователю получить информацию о том, когда именно пользователь присоединился к вашему сайту.

Последний, самый популярный вариант реализации этой возможности – вывод даты регистрации пользователя на его публичной странице во фронтэнде сайта.

Давайте рассмотрим все эти подходы.

Добавление столбца с датой регистрации к странице Users в панели администратора

Первое, что вам понадобится сделать – это установить плагин Admin Columns. После активации вам нужно будет зайти на страницу Параметры – Admin Columns и настроить плагин.

addregisteredcolumn

Во вкладке Admin Columns щелкните по Users, после чего нажмите на Add Column.

Затем выберите Registered в выпадающем меню Type и щелкните по кнопке Store Updates (Сохранить изменения).

Если вы посетите экран Users, вы увидите новый столбец, который будет называться Registered. В нем будет отображена дата регистрации пользователя на сайте.

userstable

Вывод поля с датой регистрации в профиле пользователя

Чтобы вывести дату регистрации на странице редактирования профиля, вам нужно будет загрузить произвольный плагин на свой сайт.

Создайте новый файл на компьютере в текстовом редакторе  (к примеру, в Notepad), после чего сохраните его под названием membersince.php.

Откройте файл и вставьте в него код:

<?php
/*
Plugin Name: Member Since
Plugin URI:  http://www.yoursite.com
Description: Adds registration date on edit user profile screen. 
Version:     1.0
Author:      WPSite
*/


namespace ShowMemberSince;
add_action( 'plugins_loaded', 'ShowMemberSinceinit' );
/**
 * Adding needed action hooks
*/
function init(){
  foreach( array( 'show_user_profile', 'edit_user_profile' ) as $hook )
        add_action( $hook, 'ShowMemberSinceadd_custom_user_profile_fields', 10, 1 );
}
/**
 * Output table
 * @param object $user User object
 */
function add_custom_user_profile_fields( $user ){
    $table =
    '<h3>%1$s</h3>
    <table class="form-table">
        <tr>
            <th>
                %1$s
            </th>
            <td>
                <p>Member since: %2$s</p>
            </td>
        </tr>
    </table>';
    $udata = get_userdata( $user-ID );
    $registered = $udata->user_registered;
    printf(
        $table,
        'Registered',
        date( "M Y", strtotime( $registered ) )
    );
}
?>

Сохраните файл и загрузите его на свой WordPress-сайт.

Вы можете подключиться к своему сайту через FTP-клиент, после чего перейти к папке /wp-content/plugins/ и загрузить в нее свой файл membersince.php.

После этого вам нужно будет перейти к разделу с плагинами в панели администратора и активировать свой новый плагин.

Все. Если вы перейдете к разделу редактирования пользовательских профилей, вы должны увидеть дату регистрации.

membersince

Вывод даты регистрации пользователя на своем WordPress-сайте

В этом методе мы будем использовать простой шорткод для вывода даты регистрации пользователя во фронтэнде WordPress-сайта.

Первое, с чего нужно будет начать – это добавить следующий код в файл functions.php темы (или оформить в виде функционального плагина):

function wpb_user_registration_date($atts, $content = null ) { 

$userlogin = shortcode_atts( array(
'user' => FALSE,
), $atts );

$uname = $userlogin['user'];     

if ($uname!== FALSE) {             

$user = get_user_by( 'login', $uname );  
if ($user == false) { 

$message ='Sorry no such user found.'; 


} else { 

$udata = get_userdata( $user-ID );
$registered = $udata->user_registered;

$message =  'Member since: ' . date( "d F Y", strtotime( $registered ) );

}
    
} else { 

$message = 'Please provide a username.'; 

} 

return $message; 

} 

add_shortcode('membersince', 'wpb_user_registration_date');

Теперь вы можете легко вывести дату регистрации пользователя, вставив следующий шорткод (без пробелов):

[ membersince user=peter ]

В качестве peter вы можете использовать любое имя пользователя, которое хотите.

Источник: wpbeginner.com

Сохранено из oddstyle.ru

Добавить комментарий

%d такие блоггеры, как: