better post metadata and property getter
This commit is contained in:
parent
6a51a303f7
commit
b78bbbe372
1 changed files with 28 additions and 9 deletions
|
@ -78,21 +78,40 @@ abstract class Base { // todo renmae to Base_tranformer
|
||||||
/**
|
/**
|
||||||
* Retrieves a post meta field for the configured post.
|
* Retrieves a post meta field for the configured post.
|
||||||
*
|
*
|
||||||
* @param string $key Optional. The meta key to retrieve. By default,
|
* @param string $key The meta key to retrieve. By default,
|
||||||
* returns data for all keys. Default empty.
|
* returns data for all keys.
|
||||||
* @param bool $single Optional. Whether to return a single value.
|
* @param bool $single Optional. Whether to return a single value.
|
||||||
* This parameter has no effect if `$key` is not specified.
|
* This parameter has no effect if `$key` is not specified.
|
||||||
* Default false.
|
* Default false.
|
||||||
|
* @param mixed $default_value Optional. if the key doesn't exists, it returns the default value.
|
||||||
|
* Default null.
|
||||||
* @return mixed An array of values if `$single` is false.
|
* @return mixed An array of values if `$single` is false.
|
||||||
* The value of the meta field if `$single` is true.
|
* The value of the meta field if `$single` is true.
|
||||||
* False for an invalid `$post_id` (non-numeric, zero, or negative value).
|
* False for an invalid `$post_id` (non-numeric, zero, or negative value).
|
||||||
* An empty string if a valid but non-existing post ID is passed.
|
* An empty string if a valid but non-existing post ID is passed.
|
||||||
*/
|
*/
|
||||||
public function get_post_meta( string $key = '', $single = false, $default = null ) {
|
public function get_post_meta( $key, $single = false, $default_value = null ) {
|
||||||
// todo test what if not present
|
if ( \metadata_exists( 'post', $this->wp_post->ID, $key ) ) {
|
||||||
// empty string or empty array, then return default
|
|
||||||
return \get_post_meta( $this->wp_post->ID, $key, $single );
|
return \get_post_meta( $this->wp_post->ID, $key, $single );
|
||||||
}
|
}
|
||||||
|
return $default_value;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieves a post property field for the configured post.
|
||||||
|
*
|
||||||
|
* @param string $key The property key to retrieve. By default,
|
||||||
|
* returns data for all keys.
|
||||||
|
* @param mixed $default_value Optional. if the key doesn't exists, it returns the default value.
|
||||||
|
* Default null.
|
||||||
|
* @return mixed The value of the property.
|
||||||
|
*/
|
||||||
|
public function get_post_property( $key, $default_value = null ) {
|
||||||
|
if ( isset( $this->wp_post->$key ) ) {
|
||||||
|
return $this->wp_post->$key;
|
||||||
|
}
|
||||||
|
return $default_value;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Retrieves a post meta field for the configured post.
|
* Retrieves a post meta field for the configured post.
|
||||||
|
|
Loading…
Reference in a new issue