Make WordPress Core


Ignore:
Timestamp:
11/07/2005 09:56:03 PM (21 years ago)
Author:
ryan
Message:

Object caching, round one.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-includes/pluggable-functions.php

    r3004 r3011  
    2828if ( !function_exists('get_userdata') ) :
    2929function get_userdata( $user_id ) {
    30         global $wpdb, $cache_userdata;
     30        global $wpdb;
    3131        $user_id = (int) $user_id;
    3232        if ( $user_id == 0 )
    3333                return false;
    3434
    35         if ( isset( $cache_userdata[$user_id] ) )
    36                 return $cache_userdata[$user_id];
     35        $user = wp_cache_get($user_id, 'users');
     36       
     37        if ( $user )
     38                return $user;
    3739
    3840        if ( !$user = $wpdb->get_row("SELECT * FROM $wpdb->users WHERE ID = '$user_id'") )
    39                 return $cache_userdata[$user_id] = false;
     41                return false;
    4042
    4143        $metavalues = $wpdb->get_results("SELECT meta_key, meta_value FROM $wpdb->usermeta WHERE user_id = '$user_id'");
    … …  
    5254        }
    5355
    54         $cache_userdata[$user_id] = $user;
    55         $cache_userdata[$cache_userdata[$user_id]->user_login] =& $cache_userdata[$user_id];
    56 
    57         return $cache_userdata[$user_id];
     56        wp_cache_add($user_id, $user, 'users');
     57        wp_cache_add($user->user_login, $user, 'users');
     58       
     59        return $user;
    5860}
    5961endif;
    … …  
    9698        if ( empty( $user_login ) )
    9799                return false;
    98 
    99         if ( isset( $cache_userdata[$user_login] ) )
    100                 return $cache_userdata[$user_login];
     100               
     101        $userdata = wp_cache_get($user_login, 'users');
     102        if ( $userdata )
     103                return $userdata;
    101104
    102105        if ( !$user = $wpdb->get_row("SELECT * FROM $wpdb->users WHERE user_login = '$user_login'") )
    … …  
    148151        }
    149152
    150         $login = $wpdb->get_row("SELECT ID, user_login, user_pass FROM $wpdb->users WHERE user_login = '$username'");
     153        $login = get_userdatabylogin($username);
     154        //$login = $wpdb->get_row("SELECT ID, user_login, user_pass FROM $wpdb->users WHERE user_login = '$username'");
    151155
    152156        if (!$login) {
Note: See TracChangeset for help on using the changeset viewer.