WordPress.org

Make WordPress Core

Ticket #10788: 10788-transient-filters.patch

File 10788-transient-filters.patch, 1.8 KB (added by nacin, 4 years ago)
  • functions.php

     
    658658        global $_wp_using_ext_object_cache, $wpdb; 
    659659 
    660660        if ( $_wp_using_ext_object_cache ) { 
    661                 return wp_cache_delete($transient, 'transient'); 
     661                $value = wp_cache_delete($transient, 'transient'); 
    662662        } else { 
    663663                $transient = '_transient_' . esc_sql($transient); 
    664                 return delete_option($transient); 
     664                $value = delete_option($transient); 
    665665        } 
     666 
     667        return apply_filters('delete_transient_' . $transient, $value); 
    666668} 
    667669 
    668670/** 
     
    688690        if ( $_wp_using_ext_object_cache ) { 
    689691                $value = wp_cache_get($transient, 'transient'); 
    690692        } else { 
    691                 $transient_option = '_transient_' . esc_sql($transient); 
     693                $safe_transient = esc_sql($transient); 
     694                $transient_option = '_transient_' . $safe_transient; 
    692695                // If option is not in alloptions, it is not autoloaded and thus has a timeout 
    693696                $alloptions = wp_load_alloptions(); 
    694697                if ( !isset( $alloptions[$transient_option] ) ) { 
    695                         $transient_timeout = '_transient_timeout_' . esc_sql($transient); 
     698                        $transient_timeout = '_transient_timeout_' . $safe_transient; 
    696699                        if ( get_option($transient_timeout) < time() ) { 
    697700                                delete_option($transient_option); 
    698701                                delete_option($transient_timeout); 
     
    736739                                $autoload = 'no'; 
    737740                                add_option($transient_timeout, time() + $expiration, '', 'no'); 
    738741                        } 
    739                         return add_option($transient, $value, '', $autoload); 
     742                        $value = add_option($transient, $value, '', $autoload); 
    740743                } else { 
    741744                        if ( 0 != $expiration ) 
    742745                                update_option($transient_timeout, time() + $expiration); 
    743                         return update_option($transient, $value); 
     746                        $value = update_option($transient, $value); 
    744747                } 
    745748        } 
     749 
     750        return apply_filters('set_transient_' . $transient, $value); 
    746751} 
    747752 
    748753/**