Home » Functions » wp_set_post_terms

Function Name: wp_set_post_terms

Explanation: The wp_set_post_terms function is a powerful WordPress function that allows you to set or update the terms (categories, tags, or custom taxonomies) for a specific post. It provides an easy way to assign or modify the taxonomy terms associated with a post.

This function takes three parameters: the post ID, the taxonomy (e.g., category, post_tag, or a custom taxonomy), and an array of term names, IDs, or slugs. It then associates the specified terms with the given post.

The wp_set_post_terms function is commonly used when you want to programmatically assign or update the terms of a post. For example, you might use it to add a new category to a post or to update the tags for a specific post.

Example Usage:

Let’s say you have a custom taxonomy called "genre" and you want to assign the terms "action" and "adventure" to a post with ID 123. You can achieve this using the wp_set_post_terms function.

$post_id = 123;
$taxonomy = 'genre';
$terms = array('action', 'adventure');

wp_set_post_terms($post_id, $terms, $taxonomy);

In this example, the wp_set_post_terms function will associate the terms "action" and "adventure" with the post having the ID 123 under the "genre" taxonomy.

Note that you need to have the appropriate capabilities to use this function, typically the ‘edit_posts’ capability.

Overall, the wp_set_post_terms function proves to be incredibly useful when you need to dynamically manage the taxonomy terms associated with a post in your WordPress website. It allows you to effortlessly assign or update terms programmatically, saving you valuable time and effort.

Learn More on WordPress.org

WordPress snippets using the wp_set_post_terms function

Register an account to save your snippets or go Pro to get more features.