【问题标题】:how to filter users created by admin in wordpress如何过滤管理员在wordpress中创建的用户
【发布时间】:2014-06-20 17:45:53
【问题描述】:

有没有办法将 admin 在 wordpress 中创建的用户分开,例如 admin1 创建了 3 个编辑器,而 admin2 创建了 5 个编辑器,admin1 不应该看到 admin2 创建的用户,反之亦然。

【问题讨论】:

    标签: wordpress


    【解决方案1】:

    请在您的functions.php中添加以下代码

            add_action( 'user_register', 'ad_registration_save', 10, 1 );
            function ad_registration_save( $user_id ) { 
                    $current_admin_user = wp_get_current_user();
                if ( isset( $_POST['first_name'] ) ){
                    $user = new WP_User( $user_id );
                    $user_roles = $user->roles;
                    $user_role = array_shift($user_roles);
                    if($user_role!="administrator"){
                        update_user_meta($user_id, 'asso_admin', $current_admin_user->ID);  
                    }else{
                        update_user_meta($user_id, 'asso_admin', $user_id); 
                    }        
                }
            }
    
    
            add_action('pre_user_query','adminuser_pre_user_query');
            function adminuser_pre_user_query($user_search) {
                if(is_admin()){
                  $user = wp_get_current_user();
                  if($user->ID!=1){
                    global $wpdb;
                    $user_search->query_from .= "JOIN {$wpdb->usermeta} um ON um.user_id = {$wpdb->users}.ID AND um.meta_key = 'asso_admin'";
                    $user_search->query_where = 'WHERE um.meta_value=' . $user->ID;         
                  }
                }
            }
    

    【讨论】:

      【解决方案2】:

      你必须:

      【讨论】:

        猜你喜欢
        • 2018-11-13
        • 2017-07-04
        • 1970-01-01
        • 1970-01-01
        • 2011-03-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-04-04
        相关资源
        最近更新 更多