wp_set_post_tags( int $post_id, string|array $tags = '', bool $append = false ): array|false|WP_Error

Sets the tags for a post.


Top ↑

See also

Top ↑


$post_id int Optional
The Post ID. Does not default to the ID of the global $post.
$tags string|array Optional
An array of tags to set for the post, or a string of tags separated by commas.

Default: ''

$append bool Optional
If true, don't delete existing tags, just add on. If false, replace the tags with the new tags.

Default: false

Top ↑


array|false|WP_Error Array of term taxonomy IDs of affected terms. WP_Error or false on failure.

Top ↑

More Information

If you set IDs of an existing tag in the array, WordPress assigns the existing tag.

If you pass text in the array, WP will create a tag if it doesn’t exist and assigns it to the post

You can mix text and IDs. The text will create a term, if it not exists, the ID will be used for an existing tag – both get assigned to the post.

Top ↑


File: wp-includes/post.php. View all references

function wp_set_post_tags( $post_id = 0, $tags = '', $append = false ) {
	return wp_set_post_terms( $post_id, $tags, 'post_tag', $append );

Top ↑


Version Description
2.3.0 Introduced.

Top ↑

User Contributed Notes

You must log in before being able to contribute a note or feedback.