wp_get_post_tags( int $post_id, array $args = array() )
Retrieve the tags for a post.
Description Description
There is only one default for this function, called ‘fields’ and by default is set to ‘all’. There are other defaults that can be overridden in wp_get_object_terms().
Parameters Parameters
- $post_id
-
(int) (Optional) The Post ID. Does not default to the ID of the global $post. Default 0.
- $args
-
(array) (Optional) Tag query parameters. See WP_Term_Query::__construct() for supported arguments.
Default value: array()
Return Return
(array|WP_Error) Array of WP_Term objects on success or empty array if no tags were found. WP_Error object if 'post_tag' taxonomy doesn't exist.
Source Source
File: wp-includes/post.php
function wp_get_post_tags( $post_id = 0, $args = array() ) {
return wp_get_post_terms( $post_id, 'post_tag', $args );
}
Expand full source code Collapse full source code View on Trac
Changelog Changelog
| Version | Description |
|---|---|
| 2.3.0 | Introduced. |
User Contributed Notes User Contributed Notes
You must log in before being able to contribute a note or feedback.
For a post with tags tag2, tag5 and tag6, the code
displays
Array ( [0] => stdClass Object ( [term_id] => 4 [name] => tag2 [slug] => tag2 [term_group] => 0 [term_taxonomy_id] => 4 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 7 ) [1] => stdClass Object ( [term_id] => 7 [name] => tag5 [slug] => tag5 [term_group] => 0 [term_taxonomy_id] => 7 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 6 ) [2] => stdClass Object ( [term_id] => 16 [name] => tag6 [slug] => tag6 [term_group] => 0 [term_taxonomy_id] => 16 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 2 ) )Expand full source codeCollapse full source code
To get a list of only the tag IDs for a particular post:
and assuming the same dataset as the first example,
$tag_idswould containDisplay a post specific list of tags,extending this from an example bhlarsen posted on get_tags(). There is probably a better way to do this.
$tags = wp_get_post_tags($post->ID); //this is the adjustment, all the rest is bhlarsen $html = '<div class="post_tags">'; foreach ( $tags as $tag ) { $tag_link = get_tag_link( $tag->term_id ); $html .= "<a href='{$tag_link}' title='{$tag->name} Tag' class='{$tag->slug}'>"; $html .= "{$tag->name}</a> "; } $html .= '</div>'; echo $html;Feedback
Can you please update this example to include escaping? — By Drew Jaynes —