get_the_taxonomies
函数
get_the_taxonomies ( $post = 0, $args = array() )
- 参数
-
-
(int|WP_Post)
$post
Optional. Post ID or WP_Post object. Default is global $post.- Required: 否
-
(array)
$args
{ Optional. Arguments about how to format the list of taxonomies. Default empty array. @type string $template Template for displaying a taxonomy label and list of terms. Default is “Label: Terms.” @type string $term_template Template for displaying a single term in the list. Default is the term name linked to its archive. }- Required: 否
- Default: array()
-
(int|WP_Post)
- 返回值
-
- (string[]) List of taxonomies.
- 定义位置
-
-
wp-includes/taxonomy.php
, line 4706
-
wp-includes/taxonomy.php
- 引入
- 2.5.0
- 弃用
- –
Retrieves all taxonomies associated with a post.
This function can be used within the loop. It will also return an array of
the taxonomies with links to the taxonomy and name.
function get_the_taxonomies( $post = 0, $args = array() ) { $post = get_post( $post ); $args = wp_parse_args( $args, array( /* translators: %s: Taxonomy label, %l: List of terms formatted as per $term_template. */ 'template' => __( '%s: %l.' ), 'term_template' => '%2$s', ) ); $taxonomies = array(); if ( ! $post ) { return $taxonomies; } foreach ( get_object_taxonomies( $post ) as $taxonomy ) { $t = (array) get_taxonomy( $taxonomy ); if ( empty( $t['label'] ) ) { $t['label'] = $taxonomy; } if ( empty( $t['args'] ) ) { $t['args'] = array(); } if ( empty( $t['template'] ) ) { $t['template'] = $args['template']; } if ( empty( $t['term_template'] ) ) { $t['term_template'] = $args['term_template']; } $terms = get_object_term_cache( $post->ID, $taxonomy ); if ( false === $terms ) { $terms = wp_get_object_terms( $post->ID, $taxonomy, $t['args'] ); } $links = array(); foreach ( $terms as $term ) { $links[] = wp_sprintf( $t['term_template'], esc_attr( get_term_link( $term ) ), $term->name ); } if ( $links ) { $taxonomies[ $taxonomy ] = wp_sprintf( $t['template'], $t['label'], $links, $terms ); } } return $taxonomies; }
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。