WordPress函数说明 get_terms描述
您可以在发送查询之前完全注入任何自定义项,并使用过滤器控制输出。
该“get_terms”当缓存期限,并通过发现长期使用$分类的阵列沿和$args来滤镜阵列将被调用。在传递术语数组之前也会调用此过滤器,并将传递术语数组以及$taxonomies和$args。
该“list_terms_exclusions”过滤器经过编译排除用的$ args一起。
该“get_terms_orderby”过滤器传递ORDER BY的查询子句与$ args数组沿。
在4.5.0之前,第一个参数get_terms()是分类法或分类法列表:
$terms = get_terms( 'post_tag', array( 'hide_empty' => false, ) );
从4.5.0开始,分类法应该通过$args数组中的“taxonomy”参数传递:
$terms = get_terms( array( 'taxonomy' => 'post_tag', 'hide_empty' => false, ) );
get_terms参数
$args
(string | array) (可选) 数组或参数字符串。有关已 接受参数的信息,请参阅WP_Term_Query :: __ construct()。
默认值:array()
$deprecated
(array) (可选) 参数数组,使用遗留函数参数格式时。如果存在,则此参数将被解释为$args,并且第一个函数参数将被解析为分类法或分类法数组。
默认值:
get_terms返回
(array | int | WP_Error)WP_Term实例及其子项的列表。如果任何$taxonomies不存在,将返回WP_Error。
来源
文件:wp-includes / taxonomy.php
Changelog
更新日志
版 描述
4.8.0 引入’suppress_filter’参数。
4.5.0 更改了函数签名,以便可以将$args数组作为第一个参数提供。引入了’meta_key’和’meta_value’参数。引入了按元数据订购结果的功能。
4.4.0 引入了将’term_id’作为orderby参数的’id’别名传递的功能。引入了’meta_query’和’update_term_meta_cache’参数。转换为返回WP_Term对象的列表。
4.2.0 引入了’name’和’childless’参数。
2.3.0 介绍。
get_terms实例
按自定义分类法获取类别和子类别:
$taxonomies = get_terms( array( 'taxonomy' => 'taxonomy_name', 'hide_empty' => false ) ); if ( !empty($taxonomies) ) : $output = '<select>'; foreach( $taxonomies as $category ) { if( $category->parent == 0 ) { $output.= '<optgroup label="'. esc_attr( $category->name ) .'">'; foreach( $taxonomies as $subcategory ) { if($subcategory->parent == $category->term_id) { $output.= '<option value="'. esc_attr( $subcategory->term_id ) .'"> '. esc_html( $subcategory->name ) .'</option>'; } } $output.='</optgroup>'; } } $output.='</select>'; echo $output; endif;