返回介绍

wp_get_post_tags()

发布于 2017-09-11 12:08:00 字数 4377 浏览 992 评论 0 收藏 0

wp_get_post_tags( int $post_id,  array $args = array() )

Retrieve the tags for a post.


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().


参数

$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()


返回值

(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.


源代码

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);
}

更新日志

Versiondescription
2.3.0Introduced.

相关函数

Uses

  • wp-includes/post.php: wp_get_post_terms()

Used By

  • wp-includes/class-wp-xmlrpc-server.php: wp_xmlrpc_server::mw_getPost()
  • wp-includes/class-wp-xmlrpc-server.php: wp_xmlrpc_server::mw_getRecentPosts()

User Contributed Notes

  1. Skip to note content You must log in to vote on the helpfulness of this noteVote results for this note: 0You must log in to vote on the helpfulness of this note Contributed by Codex

    For a post with tags tag2, tag5 and tag6, the code

    $t = wp_get_post_tags($post->ID);
    print_r($t);
    

    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
           )
    
    )
    
    
  2. To get a list of only the tag IDs for a particular post:

    
    global $post;
    $tag_ids = wp_get_post_tags( $post->ID, array( 'fields' => 'ids' ) );
    

    and assuming the same dataset as the first example, $tag_ids would contain

    
    [4, 7, 16]
    

    Display 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;

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文