wpseek.com
Eine auf WordPress spezialiserte Suchmaschine für Entwickler und Theme-Autoren
update_metadata [ WordPress Function ]
update_metadata ( $meta_type, $object_id, $meta_key, $meta_value, $prev_value = '' )
| Parameter: |
|
| Nutzt: | |
| Gibt zurück: |
|
| Definiert in: |
|
Ähnliche Funktionen: update_meta, update_metadata_by_mid, delete_metadata, update_meta_cache, get_metadata
Update metadata for the specified object. If no value already exists for the specified object ID and metadata key, the metadata will be added.
Source
<?php
function update_metadata($meta_type, $object_id, $meta_key, $meta_value, $prev_value = '') {
if ( !$meta_type || !$meta_key )
return false;
if ( !$object_id = absint($object_id) )
return false;
if ( ! $table = _get_meta_table($meta_type) )
return false;
global $wpdb;
$column = esc_sql($meta_type . '_id');
$id_column = 'user' == $meta_type ? 'umeta_id' : 'meta_id';
// expected_slashed ($meta_key)
$meta_key = stripslashes($meta_key);
$passed_value = $meta_value;
$meta_value = stripslashes_deep($meta_value);
$meta_value = sanitize_meta( $meta_key, $meta_value, $meta_type );
$check = apply_filters( "update_{$meta_type}_metadata", null, $object_id, $meta_key, $meta_value, $prev_value );
if ( null !== $check )
return (bool) $check;
if ( ! $meta_id = $wpdb->get_var( $wpdb->prepare( "SELECT $id_column FROM $table WHERE meta_key = %s AND $column = %d", $meta_key, $object_id ) ) )
return add_metadata($meta_type, $object_id, $meta_key, $passed_value);
// Compare existing value to new value if no prev value given and the key exists only once.
if ( empty($prev_value) ) {
$old_value = get_metadata($meta_type, $object_id, $meta_key);
if ( count($old_value) == 1 ) {
if ( $old_value[0] === $meta_value )
return false;
}
}
$_meta_value = $meta_value;
$meta_value = maybe_serialize( $meta_value );
$data = compact( 'meta_value' );
$where = array( $column => $object_id, 'meta_key' => $meta_key );
if ( !empty( $prev_value ) ) {
$prev_value = maybe_serialize($prev_value);
$where['meta_value'] = $prev_value;
}
do_action( "update_{$meta_type}_meta", $meta_id, $object_id, $meta_key, $_meta_value );
if ( 'post' == $meta_type )
do_action( 'update_postmeta', $meta_id, $object_id, $meta_key, $meta_value );
$wpdb->update( $table, $data, $where );
wp_cache_delete($object_id, $meta_type . '_meta');
do_action( "updated_{$meta_type}_meta", $meta_id, $object_id, $meta_key, $_meta_value );
if ( 'post' == $meta_type )
do_action( 'updated_postmeta', $meta_id, $object_id, $meta_key, $meta_value );
return true;
}
?>
Beispiele [ wp-snippets.com ]
Top Google Suchergebnisse
- Function Reference/update metadata « WordPress Codex
Description. Update metadata for the specified object. If no value already exists for the specified object ID and metadata key, the metadata will be added.
codex.wordpress.org - PHPXRef 0.7 : WordPress : Function Reference: update_metadata()
update_metadata(). Defined at: /wp-includes/meta.php -> line 82. Referenced 3 times: /wp-includes/user.php -> line 826 · /wp-includes/post.php -> line 1556 ...
phpxref.ftwr.co.uk - update_metadata (WordPress Function) - WPSeek.com
WordPress lookup for update_metadata, a WordPress Function. wpseek.com is a WordPress-centric search tool for developers and theme authors.
wpseek.com - update_metadata() WordPress function reference, arguments and ...
Update metadata for the specified object. If no value already exists for the specified object ID and metadata key, the metadata will be added.
queryposts.com