Make get_post_custom() a wrapper of get_post_meta() so that it works when cache addition is suspended and to simplify it.
Props leewillis77 for the initial patch. Fixes #19708. git-svn-id: https://develop.svn.wordpress.org/trunk@19906 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
4d6b3dd997
commit
dd9c09eff5
|
@ -1513,28 +1513,21 @@ function delete_post_meta_by_key($post_meta_key) {
|
||||||
/**
|
/**
|
||||||
* Retrieve post meta fields, based on post ID.
|
* Retrieve post meta fields, based on post ID.
|
||||||
*
|
*
|
||||||
* The post meta fields are retrieved from the cache, so the function is
|
* The post meta fields are retrieved from the cache where possible,
|
||||||
* optimized to be called more than once. It also applies to the functions, that
|
* so the function is optimized to be called more than once.
|
||||||
* use this function.
|
|
||||||
*
|
*
|
||||||
* @since 1.2.0
|
* @since 1.2.0
|
||||||
* @link http://codex.wordpress.org/Function_Reference/get_post_custom
|
* @link http://codex.wordpress.org/Function_Reference/get_post_custom
|
||||||
*
|
*
|
||||||
* @uses $id Current Loop Post ID
|
* @param int $post_id Post ID.
|
||||||
*
|
|
||||||
* @param int $post_id post ID
|
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
function get_post_custom( $post_id = 0 ) {
|
function get_post_custom( $post_id = 0 ) {
|
||||||
$post_id = absint( $post_id );
|
$post_id = absint( $post_id );
|
||||||
|
|
||||||
if ( ! $post_id )
|
if ( ! $post_id )
|
||||||
$post_id = get_the_ID();
|
$post_id = get_the_ID();
|
||||||
|
|
||||||
if ( ! wp_cache_get( $post_id, 'post_meta' ) )
|
return get_post_meta( $post_id, '' );
|
||||||
update_postmeta_cache( $post_id );
|
|
||||||
|
|
||||||
return wp_cache_get( $post_id, 'post_meta' );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue