add_post_meta()

You are here:

add_post_meta( int $post_idstring $meta_keymixed $meta_valuebool $unique = false )

Adds a meta field to the given post.

Description Description

Post meta data is called “Custom Fields” on the Administration Screen.


Top ↑

Parameters Parameters

$post_id

(int) (Required) Post ID.

$meta_key

(string) (Required) Metadata name.

$meta_value

(mixed) (Required) Metadata value. Must be serializable if non-scalar.

$unique

(bool) (Optional) Whether the same key should not be added.

Default value: false


Top ↑

Return Return

(int|false) Meta ID on success, false on failure.


Top ↑

More Information More Information

Note that if the given key already exists among custom fields of the specified post, another custom field with the same key is added unless the $unique argument is set to true, in which case, no changes are made. If you want to update the value of an existing key, use the update_post_meta() function instead

 

Character Escaping Character Escaping

Because meta values are passed through the stripslashes() function, you need to be careful about content escaped with  characters. You can read more about the behavior, and a workaround example, in the update_post_meta() documentation.


Top ↑

Source Source

File: wp-includes/post.php

2075
2076
2077
2078
2079
2080
2081
2082
2083
function add_post_meta( $post_id, $meta_key, $meta_value, $unique = false ) {
    // Make sure meta is added to the post, not a revision.
    $the_post = wp_is_post_revision( $post_id );
    if ( $the_post ) {
        $post_id = $the_post;
    }
 
    return add_metadata( 'post', $post_id, $meta_key, $meta_value, $unique );
}


Top ↑

Changelog Changelog

Changelog
Version Description
1.5.0 Introduced.
Was this article helpful?
Dislike 0
Views: 7