显示包含最大字母数的分类

时间:2013-12-29 作者:Manolo

我正在寻找一个函数,它可以显示具有最大字母数的帖子分类法。我取得了冠军(How to limit the max number of characteres in the title that are displayed), 但我不能用分类法来做。

E、 g.我有这个:

echo \'<div class="artistas-review" style="font-size: 0.7em; margin-left: 15px; margin-top: -10px; padding: 3px;">\'.get_the_term_list( get_the_ID(), \'Artistas\', \'<div class="artista">\', \'</div>\' ).\'</div>\';
这显示了“艺术家”的分类法。我只想显示前10个字母。你知道如何改变它吗?

1 个回复
最合适的回答,由SO网友:matiyin 整理而成

使用PHP限制字符串,就像您提到的示例一样。然而,我们可以自己构建术语列表,因此不必编写任何过滤器。我们改用“get\\u the\\u terms”,它返回一个字符串数组,然后可以输出并缩短:

<?php
$max = 30; //define your max characters here    
$terms = get_the_terms( get_the_ID(), \'Artistas\' );

if ( $terms && ! is_wp_error( $terms ) ) : 
  echo \'<div class="artista">\';
  foreach ( $terms as $term ) {
    $term_name = $term->name;
    if( strlen( $term_name ) > $max ) {
      $term_name = substr( $term_name, 0, $max ). " &hellip;";
    }
    echo \'<a href="\'.get_term_link( $term->slug, \'Artistas\' ).\'" title="\'.$term->name.\'">\'.$term_name.\'</a>\';
  }
  echo \'</div>\';
endif;
?>
这应该会输出一个包装在div中的链接列表(如果我没有输入任何错误;)请注意,“&hellip”是您想要在剪切字符串后面放置的任何内容,在本例中是3个点。

干杯

结束

相关推荐

为什么Apply_Filters在循环内部和外部的行为不同?

What I want: 通过创建$query = new WP_Query($args);Why: 以json格式返回特定内容,作为一种API请求,准备在另一个站点上显示What I tried first:foreach($query->posts as $post) { $post->post_content = apply_filters(\'the_content\', $post->post_content); }; 这执行了autop 和do