WordPress函数get_tags用于获取标签对象。
1 | get_tags( string|array $args = '' ) |
函数参数
$args
数组或字符串,可用值如下。
taxonomy
字符串,默认值:post_tag
分类法名称
object_ids
整数或数组
对应于wp_term_relationships表object_id字段,该字段对应于wp_posts表的ID,也就是指定文章的ID
orderby
字符串,默认值:name
排序的参照标准,可用值如下:
- terms字段:name、slug、term_group、term_id、id、description、parent、term_order;
- count:按文章数排序;
- include:匹配include参数;
- slug__in:匹配slug参数;
- meta_value/meta_value_num:按照termmeta表中meta_value字段值排序,需指定meta_key参数;
order
字符串,默认值:ASC
排序的方式,可用值如下:
- ASC:默认值,以升序排列;
- DESC:降序排列;
hide_empty
布尔值,默认值:true
是否隐藏没有文章的标签
include
数组或字符串
要包含的标签ID
exclude
数组或字符串
要排除的标签ID
number
整数
返回的标签数量
offset
整数
查询偏移量
fields
字符串
要查询的terms字段,指定字段后将只返回指定字段值
- all:返回包含所有WP_Term Object的数组;
- all_with_object_id:测试中没有发现与all有区别;
- ids:仅返回标签的ID;
- tt_ids:返回term_taxonomy_id,一般情况下与term_id的值是相同的;
- names:仅返回标签的名称;
- slugs:仅返回标签的别名;
- count:返回查询到的标签总数;
- id=>name:以ID为键,返回标签名称;
- id=>slug:以ID为键,返回标签别名;
count
布尔值,默认值:false
返回标签文章数量,优先于fields的设置,实际测试没有任何效果。
name
字符串
指定标签的名称,则返回该标签对象
slug
字符串
指定标签别名,则返回该标签对象
term_taxonomy_id
整数
根据指定的分类法ID返回数据
search
字符串
搜索匹配条件的标签
name__like
字符串
返回名称中包含指定关键词的标签
description__like
字符串
返回描述中包含指定关键词的标签
cache_domain
字符串,默认值:core
指定对象缓存的Key
update_term_meta_cache
布尔值,默认值:true
meta_query
数组
元数据查询
meta_key
字符串
元数据键的名称
meta_value
字符串
元数据键的值
meta_type
字符串
meta_compare
字符串
meta_value的比较运算符
函数返回值
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | Array ( [0] => WP_Term Object ( [term_id] => 10 [name] => 建站教程 [slug] => site-tutorial [term_group] => 0 [term_taxonomy_id] => 10 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 11 [filter] => raw ) [1] => WP_Term Object ( [term_id] => 11 [name] => 互联网 [slug] => internet [term_group] => 0 [term_taxonomy_id] => 11 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) ) |
函数使用示例
1 2 3 4 5 6 7 8 9 10 11 12 | $args = array( 'hide_empty' => false, ); $tags = get_tags($args); $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. '" class="'. $tag->slug . '">'; $html .= $tag->name . '</a>'; } $html .= '</div>'; echo $html; |
扩展阅读
get_tags()函数位于:wp-includes/category.php
相关函数:
- get_terms()
- get_categories()