wp_tag_cloud
函数
wp_tag_cloud ( $args = '' )
- 参数
-
-
(array|string)
$args
{ Optional. Array or string of arguments for displaying a tag cloud. See wp_generate_tag_cloud() and get_terms() for the full lists of arguments that can be passed in `$args`. @type int $number The number of tags to display. Accepts any positive integer or zero to return all. Default 45. @type string $link Whether to display term editing links or term permalinks. Accepts ‘edit’ and ‘view’. Default ‘view’. @type string $post_type The post type. Used to highlight the proper post type menu on the linked edit page. Defaults to the first post type associated with the taxonomy. @type bool $echo Whether or not to echo the return value. Default true. }- Required: 否
- Default: (empty)
-
(array|string)
- 返回值
-
- (void|string|string[]) Void if ‘echo’ argument is true, or on failure. Otherwise, tag cloud as a string or an array, depending on ‘format’ argument.
- 定义位置
-
-
wp-includes/category-template.php
, line 716
-
wp-includes/category-template.php
- 引入
- 2.3.0
- 弃用
- –
Displays a tag cloud.
Outputs a list of tags in what is called a ‘tag cloud’, where the size of each tag
is determined by how many times that particular tag has been assigned to posts.
function wp_tag_cloud( $args = '' ) {
$defaults = array(
'smallest' => 8,
'largest' => 22,
'unit' => 'pt',
'number' => 45,
'format' => 'flat',
'separator' => "n",
'orderby' => 'name',
'order' => 'ASC',
'exclude' => '',
'include' => '',
'link' => 'view',
'taxonomy' => 'post_tag',
'post_type' => '',
'echo' => true,
'show_count' => 0,
);
$args = wp_parse_args( $args, $defaults );
$tags = get_terms(
array_merge(
$args,
array(
'orderby' => 'count',
'order' => 'DESC',
)
)
); // Always query top tags.
if ( empty( $tags ) || is_wp_error( $tags ) ) {
return;
}
foreach ( $tags as $key => $tag ) {
if ( 'edit' === $args['link'] ) {
$link = get_edit_term_link( $tag, $tag->taxonomy, $args['post_type'] );
} else {
$link = get_term_link( $tag, $tag->taxonomy );
}
if ( is_wp_error( $link ) ) {
return;
}
$tags[ $key ]->link = $link;
$tags[ $key ]->id = $tag->term_id;
}
// Here's where those top tags get sorted according to $args.
$return = wp_generate_tag_cloud( $tags, $args );
/**
* Filters the tag cloud output.
*
* @since 2.3.0
*
* @param string|string[] $return Tag cloud as a string or an array, depending on 'format' argument.
* @param array $args An array of tag cloud arguments. See wp_tag_cloud()
* for information on accepted arguments.
*/
$return = apply_filters( 'wp_tag_cloud', $return, $args );
if ( 'array' === $args['format'] || empty( $args['echo'] ) ) {
return $return;
}
echo $return;
}
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。


