我试图将我输出的类别标签数量限制为5个,并附加一个“…”输出受限的任何项目的末尾。我基本上都能用,只是我不知道如何只回显前5个标签。
我应该提到的是,我只想在特定页面上执行此操作,但我正在使用的代码存储在函数文件中,但被相关页面调用。
理想的输出如下所示:
Item 1:标签1、标签2、标签3
Item 2:标签1、标签2、标签3、标签4、标签5。。。
这是我目前掌握的代码。我想我需要使用array_splice
但我不知道如何实施。
if ( $type === \'portfolio\' ) {
$terms = get_the_term_list( $post->ID, \'royal_portfolio_cats\', \'\', $separator );
$term_array = explode(\',\',$terms);
$count = sizeof($term_array);
if ($count <= 5) {
echo $terms;
}
elseif ($count > 5) {
$limit_terms = //Do something to output only the first 5 terms with comma separators
echo $limit_terms."...";
}
}
最合适的回答,由SO网友:Heather 整理而成
Samuel Elh 回答正确。
if ( $type === \'portfolio\' ) {
$terms = get_the_term_list( $post->ID, \'royal_portfolio_cats\', \'\', $separator );
$term_array = explode(\',\',$terms);
if ( $limit = array_slice($term_array, 0, $max = 5) ) {
echo implode( ", ", $limit );
if ( count( $term_array ) > $max ) {
echo "...";
}
};
}