update_usermeta() - WordPress 函数参考中文文档

返回介绍

update_usermeta()

发布于 2017-09-11 字数3330 浏览 1004 评论 0

Warning: This function has been deprecated. Use update_user_meta() instead.

update_usermeta( int $user_id,  string $meta_key,  mixed $meta_value )

Update metadata of user.


描述

There is no need to serialize values, they will be serialized if it is needed. The metadata key can only be a string with underscores. All else will be removed.

Will remove the metadata, if the meta value is empty.


参数

$user_id

(int)
(Required)
User ID

$meta_key

(string)
(Required)
Metadata key.

$meta_value

(mixed)
(Required)
Metadata value.


返回值

(bool) True on successful update, false on failure.


源代码

File: wp-includes/deprecated.php

function update_usermeta( $user_id, $meta_key, $meta_value ) {
	_deprecated_function( __FUNCTION__, '3.0.0', 'update_user_meta()' );
	global $wpdb;
	if ( !is_numeric( $user_id ) )
		return false;
	$meta_key = preg_replace('|[^a-z0-9_]|i', '', $meta_key);

	/** @todo Might need fix because usermeta data is assumed to be already escaped */
	if ( is_string($meta_value) )
		$meta_value = stripslashes($meta_value);
	$meta_value = maybe_serialize($meta_value);

	if (empty($meta_value)) {
		return delete_usermeta($user_id, $meta_key);
	}

	$cur = $wpdb->get_row( $wpdb->prepare("SELECT * FROM $wpdb->usermeta WHERE user_id = %d AND meta_key = %s", $user_id, $meta_key) );

	if ( $cur )
		do_action( 'update_usermeta', $cur->umeta_id, $user_id, $meta_key, $meta_value );

	if ( !$cur )
		$wpdb->insert($wpdb->usermeta, compact('user_id', 'meta_key', 'meta_value') );
	elseif ( $cur->meta_value != $meta_value )
		$wpdb->update($wpdb->usermeta, compact('meta_value'), compact('user_id', 'meta_key') );
	else
		return false;

	clean_user_cache( $user_id );
	wp_cache_delete( $user_id, 'user_meta' );

	if ( !$cur )
		do_action( 'added_usermeta', $wpdb->insert_id, $user_id, $meta_key, $meta_value );
	else
		do_action( 'updated_usermeta', $cur->umeta_id, $user_id, $meta_key, $meta_value );

	return true;
}

更新日志

Version 描述
3.0.0 Use update_user_meta()
2.0.0 Introduced.

相关函数

Uses

  • wp-includes/cache.php:
    wp_cache_delete()
  • wp-includes/deprecated.php:
    delete_usermeta()
  • wp-includes/functions.php:
    _deprecated_function()
  • wp-includes/functions.php:
    maybe_serialize()
  • wp-includes/plugin.php:
    do_action()
  • wp-includes/user.php:
    clean_user_cache()
  • wp-includes/wp-db.php:
    wpdb::get_row()
  • wp-includes/wp-db.php:
    wpdb::insert()
  • wp-includes/wp-db.php:
    wpdb::update()
  • wp-includes/wp-db.php:
    wpdb::prepare()
  • Show 5 more uses
    Hide more uses


User Contributed Notes

上一篇:update_term_meta()

下一篇:update_user_caches()

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

目前还没有任何评论,快来抢沙发吧!