Actually make use of wp_cache_add to avoid unnecessary cache writes. Props skeltoac. fixes #4138

git-svn-id: https://develop.svn.wordpress.org/trunk@5248 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Ryan Boren 2007-04-12 02:27:12 +00:00
parent e8c058cfc1
commit d8c8ecb711
5 changed files with 9 additions and 9 deletions

View File

@ -136,7 +136,7 @@ function get_bookmarks($args = '') {
$results = $wpdb->get_results($query); $results = $wpdb->get_results($query);
$cache[ $key ] = $results; $cache[ $key ] = $results;
wp_cache_set( 'get_bookmarks', $cache, 'bookmark' ); wp_cache_add( 'get_bookmarks', $cache, 'bookmark' );
return apply_filters('get_bookmarks', $results, $r); return apply_filters('get_bookmarks', $results, $r);
} }

View File

@ -8,7 +8,7 @@ function get_all_category_ids() {
if ( ! $cat_ids = wp_cache_get('all_category_ids', 'category') ) { if ( ! $cat_ids = wp_cache_get('all_category_ids', 'category') ) {
$cat_ids = $wpdb->get_col("SELECT cat_ID FROM $wpdb->categories"); $cat_ids = $wpdb->get_col("SELECT cat_ID FROM $wpdb->categories");
wp_cache_set('all_category_ids', $cat_ids, 'category'); wp_cache_add('all_category_ids', $cat_ids, 'category');
} }
return $cat_ids; return $cat_ids;
@ -139,7 +139,7 @@ function &get_categories($args = '') {
reset ( $categories ); reset ( $categories );
$cache[ $key ] = $categories; $cache[ $key ] = $categories;
wp_cache_set( 'get_categories', $cache, 'category' ); wp_cache_add( 'get_categories', $cache, 'category' );
$categories = apply_filters('get_categories', $categories, $r); $categories = apply_filters('get_categories', $categories, $r);
return $categories; return $categories;
@ -160,7 +160,7 @@ function &get_category(&$category, $output = OBJECT) {
$category = (int) $category; $category = (int) $category;
if ( ! $_category = wp_cache_get($category, 'category') ) { if ( ! $_category = wp_cache_get($category, 'category') ) {
$_category = $wpdb->get_row("SELECT * FROM $wpdb->categories WHERE cat_ID = '$category' LIMIT 1"); $_category = $wpdb->get_row("SELECT * FROM $wpdb->categories WHERE cat_ID = '$category' LIMIT 1");
wp_cache_set($category, $_category, 'category'); wp_cache_add($category, $_category, 'category');
} }
} }

View File

@ -229,7 +229,7 @@ function get_option($setting) {
if( is_object( $row) ) { // Has to be get_row instead of get_var because of funkiness with 0, false, null values if( is_object( $row) ) { // Has to be get_row instead of get_var because of funkiness with 0, false, null values
$value = $row->option_value; $value = $row->option_value;
wp_cache_set($setting, $value, 'options'); wp_cache_add($setting, $value, 'options');
} else { // option does not exist, so we must cache its non-existence } else { // option does not exist, so we must cache its non-existence
$notoptions[$setting] = true; $notoptions[$setting] = true;
wp_cache_set('notoptions', $notoptions, 'options'); wp_cache_set('notoptions', $notoptions, 'options');
@ -294,7 +294,7 @@ function wp_load_alloptions() {
$alloptions = array(); $alloptions = array();
foreach ( (array) $alloptions_db as $o ) foreach ( (array) $alloptions_db as $o )
$alloptions[$o->option_name] = $o->option_value; $alloptions[$o->option_name] = $o->option_value;
wp_cache_set('alloptions', $alloptions, 'options'); wp_cache_add('alloptions', $alloptions, 'options');
} }
return $alloptions; return $alloptions;
} }

View File

@ -635,7 +635,7 @@ function get_calendar($initial = true) {
ob_end_clean(); ob_end_clean();
echo $output; echo $output;
$cache[ $key ] = $output; $cache[ $key ] = $output;
wp_cache_set( 'get_calendar', $cache, 'calendar' ); wp_cache_add( 'get_calendar', $cache, 'calendar' );
} }
function delete_get_calendar_cache() { function delete_get_calendar_cache() {

View File

@ -1012,7 +1012,7 @@ function get_all_page_ids() {
if ( ! $page_ids = wp_cache_get('all_page_ids', 'pages') ) { if ( ! $page_ids = wp_cache_get('all_page_ids', 'pages') ) {
$page_ids = $wpdb->get_col("SELECT ID FROM $wpdb->posts WHERE post_type = 'page'"); $page_ids = $wpdb->get_col("SELECT ID FROM $wpdb->posts WHERE post_type = 'page'");
wp_cache_set('all_page_ids', $page_ids, 'pages'); wp_cache_add('all_page_ids', $page_ids, 'pages');
} }
return $page_ids; return $page_ids;
@ -1055,7 +1055,7 @@ function &get_page(&$page, $output = OBJECT) {
return get_post($_page, $output); return get_post($_page, $output);
// Potential issue: we're not checking to see if the post_type = 'page' // Potential issue: we're not checking to see if the post_type = 'page'
// So all non-'post' posts will get cached as pages. // So all non-'post' posts will get cached as pages.
wp_cache_set($_page->ID, $_page, 'pages'); wp_cache_add($_page->ID, $_page, 'pages');
} }
} }
} }