Как добавить в админке доп. поле дата регистрации пользователя?

Как добавить у зарегистрированного пользователя в админ части поле с датой его регистрации? Рядом с мылом, ролью и записями.

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

  1. Вот тут http://www.domainwebcenter.com/?p=895 есть английский пошаговый мануал про добавление такой колонки в админку. В принципе все в нем понятно, единственный минус – придется редактировать файлы движка.

    Еще есть функция get_userdata, которая может возвращать все данные о пользователи из базы данных, в том числе и дату регистрации:

    < ?php echo date("M Y", strtotime(get_userdata(get_current_user_id( ))->user_registered)); ?>

    Осталось придумать, как это прикрутить к админке.

    А еще есть плагин TTC User Comments, который может выводить в админке список всех пользователей с количеством комментариев, датой последнего комментария, кликабельным электронным адресом и датой регистрации. Плагин старый, работоспособность с новыми версиями не проверялась.

    Но а вообше это, конечно же, безобразие – такая мощная система, и нет таких очевидных, элементарных вещей, как дата регистрации.

  2. Думал здесь решение найдется быстрей, но увы. Вот допилил. Может кому-нибудь пригодится. Рабочий код доп. поля даты регистрации пользователя.

    function test_modify_user_table( $column ) {
        $column['register'] = 'Регистрация';
        return $column;
    }
    add_filter( 'manage_users_columns', 'test_modify_user_table' );
     
    function test_modify_user_table_row( $val, $column_name, $user_id ) {
        $user = get_userdata( $user_id );
        switch ($column_name) {
            case 'register' :
                return $user->user_registered;
                break;
            default:
        }
        return $return;
    }
    add_filter( 'manage_users_custom_column', 'test_modify_user_table_row', 10, 3 );
    
  3. Еще вопрос по коду. У меня так и не вышло обрезать дату до: число/месяц/год? Может кто подскажет, как реализовать.

    Если оставить как есть, то выходит: 2011-04-19 08:07:56

    • $date_author_info = date("Y.m.d", strtotime(get_userdata($autor_page_id)->user_registered));
      list($yearpost, $monthpost, $daypost) = explode(".", $date_author_info); 
      $arr_date_author_info = array(1 => "января", 2 => "Февраля", 3 => "марта", 4 => "апреля", 5 => "мая", 6 => "июня", 7 => "июля", 8 => "августа", 9 => "сентября", 10 => "октября", 11 => "ноября", 12 => "декабря"); 
      if(preg_match("|^d{2}$|", $yearpost)) $yearpost = "20$yearpost"; 
      echo "$daypost ".$arr_date_author_info[intval($monthpost)]." $yearpost 
      ";
      • Посмотрите плагин Admin Column. Плагин Codepress Admin Columns позволяет простым дра-н-дропом сортировать данные в колонках записей, медиафайов и пользователей, перемещая, убирая и добавляя не только стандартные, но и те, которые появились после активации плагинов. Так же плагин позволяет задавать новые способы сортировки по самым разным полям.

    • совсем не то – там можно изменить только порядок столбцов, а сортировки по дате регистрации нет
      так же в английском мануале написано как подключить сортировку, но в текущей версии ВП нет

      Open \wp-admin\media.php and search for comment “adding submenus to profile.php“.

  4. А как можно скрыть некоторых по условию?
    например перед switch ($column_name) устроить if и в нём unset – но как? уже неделю бьюсь
    нужно показывать например только тех у кого дата совпала с тем что передам в get

Оставить комментарий

Ваш электронный адрес не будет опубликован.


*