最新公告
  • 欢迎您光临笨羊博客,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • WORDPRESS主题用户中心增加用户注册时间

    WORDPRESS主题用户中心增加用户注册时间 最后编辑:2021-08-20
    增值服务: 自动发货 使用说明 安装指导 环境配置二次开发BUG修复

    示例效果

    示例教程

    复制以下代码到当前主题的 functions.php 文件中:

    // 前台显示用户注册时间function user_registered_date(){
    	$userinfo = get_userdata(get_current_user_id());
    	$authorID = $userinfo->id;
    	$user = get_userdata( $authorID );
    	$registered = $user->user_registered;
    	echo '注册时间:' . date( 'Y年m月d日', strtotime( $registered ) );}

    然后在前台想显示当前用户注册日期的模板文件中插入以下代码:

    <?php if ( is_user_logged_in() ) { user_registered_date();} ?>

    如果你用的是ripro主题的话,把这段代码插入主题 \ pages \ user \ nav.php 文件中第31行特权到期的代码末尾 ?> 的后边

    添加注册IP/注册时间等

    /**
     * add the register record.
     */
    function get_client_ip() {
        if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown"))
            $ip = getenv("HTTP_CLIENT_IP");
        else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"),
    "unknown"))
            $ip = getenv("HTTP_X_FORWARDED_FOR");
        else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown"))
            $ip = getenv("REMOTE_ADDR");
        else if (isset ($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR']
    && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown"))
            $ip = $_SERVER['REMOTE_ADDR'];
        else
            $ip = "unknown";
        return ($ip);
    }
    // 创建一个新字段存储用户注册时的IP地址
    add_action('user_register', 'log_ip');
    function log_ip($user_id){
        $ip = get_client_ip();
        update_user_meta($user_id, 'signup_ip', $ip);
    }
    // 创建新字段存储用户登录时间和登录IP
    add_action( 'wp_login', 'insert_last_login' );
    function insert_last_login( $login ) {
        global $user_id;
        $user = get_userdatabylogin( $login );
        update_user_meta( $user->ID, 'last_login', current_time( 'mysql' ) );
        $last_login_ip = get_client_ip();
        update_user_meta( $user->ID, 'last_login_ip', $last_login_ip);
    }
    // 添加额外的栏目
    add_filter('manage_users_columns', 'add_user_additional_column');
    function add_user_additional_column($columns) {
        $columns['user_nickname'] = '昵称';
        $columns['user_url'] = '网站';
        $columns['reg_time'] = '注册时间';
        $columns['signup_ip'] = '注册IP';
        $columns['last_login'] = '上次登录';
        // 打算将注册IP和注册时间、登录IP和登录时间合并显示,所以我注销下面两行
        /*$columns['signup_ip'] = '注册IP';*/
        $columns['last_login_ip'] = '登录IP';
        unset($columns['name']);//移除“姓名”这一栏,如果你需要保留,删除这行即可
        return $columns;
    }
    //显示栏目的内容
    add_action('manage_users_custom_column',  'show_user_additional_column_content', 10, 3);
    function show_user_additional_column_content($value, $column_name, $user_id) {
        $user = get_userdata( $user_id );
        // 输出“昵称”
        if ( 'user_nickname' == $column_name )
            return $user->nickname;
        // 输出用户的网站
        if ( 'user_url' == $column_name )
            return ''.$user->user_url.'';
        // 输出注册时间和注册IP
        if('reg_time' == $column_name ){
            return get_date_from_gmt($user->user_registered) ;
        }
    // 输出注册时间和注册IP
        if('signup' == $column_name ){
            return get_user_meta( $user->ID, 'signup_ip', true);
        }
        // 输出最近登录时间和登录IP
        if ( 'last_login' == $column_name && $user->last_login ){
            return get_user_meta( $user->ID, 'last_login', ture );
        }
     
    // 输出最近登录时间和登录IP
        if ( 'last_login_ip' == $column_name ){
            return get_user_meta( $user->ID, 'last_login_ip', ture );
        }
        return $value;
    }
     
    // 默认按照注册时间排序
    add_filter( "manage_users_sortable_columns", 'cmhello_users_sortable_columns' );
    function cmhello_users_sortable_columns($sortable_columns){
        $sortable_columns['reg_time'] = 'reg_time';
        return $sortable_columns;
    }
    add_action( 'pre_user_query', 'cmhello_users_search_order' );
    function cmhello_users_search_order($obj){
        if(!isset($_REQUEST['orderby']) || $_REQUEST['orderby']=='reg_time' ){
            if( !in_array($_REQUEST['order'],array('asc','desc')) ){
                $_REQUEST['order'] = 'desc';
            }
            $obj->query_orderby = "ORDER BY user_registered ".$_REQUEST['order']."";
        }
    }

    猜你喜欢

    猜你在找

    张昊翔博客原创文章,作者:,如若转载,请注明出处:
    1、本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
    2、分享目的仅供大家学习和交流,请不要用于商业用途!
    3、本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
    4、如有链接无法下载、失效或广告,请联系管理员处理!
    5、本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!

    笨羊博客 » WORDPRESS主题用户中心增加用户注册时间

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    笨羊博客
    一个关注网站建设、网站模板、搜索引擎、小程序的媒体博客
    • 2020-08-16Hi,初次和大家见面了,请多关照!

    发表评论

    售后服务:

    • 售后服务范围 1、商业模板使用范围内问题免费咨询
      2、源码安装、模板安装(一般 ¥50-300)服务答疑仅限SVIP用户
      3、单价超过200元的模板免费一次安装,需提供服务器信息。
      付费增值服务 1、提供dedecms模板、WordPress主题、discuz模板优化等服务请详询在线客服
      2、承接 WordPress、DedeCMS、Discuz 等系统建站、仿站、开发、定制等服务
      3、服务器环境配置(一般 ¥50-300)
      4、网站中毒处理(需额外付费,500元/次/质保三个月)
      售后服务时间 周一至周日(法定节假日除外) 9:00-23:00
      免责声明 本站所提供的模板(主题/插件)等资源仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,有部分资源为网上收集或仿制而来,若模板侵犯了您的合法权益,请来信通知我们(Email: 80027422@qq.com),我们会及时删除,给您带来的不便,我们深表歉意!

    Hi, 如果你对这款模板有疑问,可以跟我联系哦!

    联系作者