如何为云标签主播添加css类?

时间:2016-05-05 作者:Ashish

如何将CSS类添加到ul 以及通过wp_tag_cloud 作用

我想要的默认类ul 属于wp-tag-cloud 未来tag-cloud 和锚定标签btn btn-xs btn-primary

<ul class="tag-cloud">
   <li><a class="btn btn-xs btn-primary" href="#">Apple</a></li>
   <li><a class="btn btn-xs btn-primary" href="#">Barcelona</a></li>
   <li><a class="btn btn-xs btn-primary" href="#">Ipod</a></li>
</ul>

3 个回复
SO网友:birgire

我们还可以使用wp_generate_tag_cloud_data 过滤器(4.3+)。

使用该过滤器,我们可以修改以下锚定数据:

  • id
  • url
  • role
  • name
  • title (在4.8中删除)slug
  • real_count
  • class
  • font_size
  • formatted_count (在4.8中添加)aria_label (在4.8中添加)show_count (在4.8中添加)style属性是硬编码的,从4.8版本可以看出:

    $a[] = sprintf(
        \'<a href="%1$s"%2$s class="%3$s" style="font-size: %4$s;"%5$s>%6$s%7$s</a>\',
          esc_url( $tag_data[\'url\'] ),
          $tag_data[\'role\'],
          esc_attr( $class ),
          esc_attr( str_replace( \',\', \'.\', $tag_data[\'font_size\'] ) . $args[\'unit\'] ),
          $tag_data[\'aria_label\'],
          esc_html( $tag_data[\'name\'] ),
          $tag_data[\'show_count\']
      );
    
    请注意,我们可以更改字体大小unit 使用:

    wp_tag_cloud( [ \'unit\' => \'rem\', \'smallest\' => 1, \'largest\' => 4 ] );
    
    或例如,使用widget_tag_cloud_args 筛选标记云小部件。

    Example:

    这里我们附加btn btn-xs btn-primary 要在所有标记云中定位的类:

    add_filter( \'wp_generate_tag_cloud_data\', function( $tag_data )
    {
        return array_map ( 
            function ( $item )
            {
                $item[\'class\'] .= \' btn btn-xs btn-primary\';
                return $item;
            }, 
            (array) $tag_data 
        );
    
    } );
    

SO网友:Johansson

标签包装在DIV 在我写这个答案的那天(4.7.5),WordPress最新版本中的元素,他们的类是tagcloud, 因此,我将转到问题中提出的下一个问题。

可以使用wp_generate_tag_cloud 滤器通过编写preg_replace 你可以随意改变课程。以下是一个示例:

add_filter(\'wp_generate_tag_cloud\', \'my_tag_cloud\',10,1);
function my_tag_cloud($string){
   return preg_replace(\'/class="tag-link-.+ tag-link-position-.+"/\', \'class="btn btn-xs btn-primary"\', $string);
}
锚固件具有tag-link-X tag-link-position-Y 类,其中X和Y是数字。

SO网友:Rarst

这些类是硬编码的wp_generate_tag_cloud() 作用您唯一的选择是通过修改最终字符串输出wp_generate_tag_cloud 滤器

相关推荐

如何在Functions.php中链接style.css

我是WordPress的新手;我刚开始学习WordPress。我想把风格联系起来。函数中的css。php,但我无法解决这里可能存在的问题。谁能给我指出正确的方向吗?指数php<?php get_header(); ?> <?php if ( have_posts() ) { while ( have_posts() ) { the_post();