get_metadata_default

函数
get_metadata_default ( $meta_type, $object_id, $meta_key, $single = false )
参数
  • (string) $meta_type Type of object metadata is for. Accepts 'post', 'comment', 'term', 'user', or any other object type with an associated meta table.
    Required:
  • (int) $object_id ID of the object metadata is for.
    Required:
  • (string) $meta_key Metadata key.
    Required:
  • (bool) $single Optional. If true, return only the first value of the specified `$meta_key`. This parameter has no effect if `$meta_key` is not specified. Default false.
    Required:
    Default: false
返回值
  • (mixed) An array of default values if `$single` is false. The default value of the meta field if `$single` is true.
定义位置
相关方法
get_metadata_rawget_metadataget_metadata_by_midwp_get_loading_attr_defaultwp_get_widget_defaults
引入
5.5.0
弃用
-

get_metadata_default函数用于检索给定元数据键的默认值: 这个函数可以用来为没有被设置的自定义元数据提供一个默认值。

检索指定元键和对象的默认元数据值。

默认情况下,如果`$single`为真,则返回一个空字符串,如果为假,则返回一个空数组。

function get_metadata_default( $meta_type, $object_id, $meta_key, $single = false ) {
	if ( $single ) {
		$value = '';
	} else {
		$value = array();
	}

	/**
	 * Filters the default metadata value for a specified meta key and object.
	 *
	 * The dynamic portion of the hook name, `$meta_type`, refers to the meta object type
	 * (post, comment, term, user, or any other type with an associated meta table).
	 *
	 * Possible filter names include:
	 *
	 *  - `default_post_metadata`
	 *  - `default_comment_metadata`
	 *  - `default_term_metadata`
	 *  - `default_user_metadata`
	 *
	 * @since 5.5.0
	 *
	 * @param mixed  $value     The value to return, either a single metadata value or an array
	 *                          of values depending on the value of `$single`.
	 * @param int    $object_id ID of the object metadata is for.
	 * @param string $meta_key  Metadata key.
	 * @param bool   $single    Whether to return only the first value of the specified `$meta_key`.
	 * @param string $meta_type Type of object metadata is for. Accepts 'post', 'comment', 'term', 'user',
	 *                          or any other object type with an associated meta table.
	 */
	$value = apply_filters( "default_{$meta_type}_metadata", $value, $object_id, $meta_key, $single, $meta_type );

	if ( ! $single && ! wp_is_numeric_array( $value ) ) {
		$value = array( $value );
	}

	return $value;
}

常见问题

FAQs
查看更多 >