以此Q&A为指导,我为我的帖子(自定义帖子类型)分配了多个类别。尝试使用此代码显示所有分配的类别,该代码完全放在单独的文件project-clipping.php
中。
$categories = get_the_category();
$cat_name = $categories[0]->name;
foreach ( $categories as $i => $category ) {
echo esc_html( $categories[0]->name );
if ( $i < $count - 1 )
echo $separator;
}
对于第一个类别,它工作正常,但随后会弹出notice: Undefined variable: count in...
。发生这种情况的次数是三次,两次等等,具体取决于分配给各个帖子的类别数量。
我试图通过将其放置在循环本身而不是外部文件中来解决此问题。不起作用。
我也查看了this,但它返回了帖子类型的所有类别,而不是帖子。
谢谢。
答案 0 :(得分:0)
您似乎没有定义计数和分隔符变量,尝试这样,根据需要更改分隔符变量。
$categories = get_the_category( get_the_ID() ) // if you are using custom taxonomy replace with get_the_terms( get_the_ID(), 'your-taxonomy');
$separator = '|'; // define separator variable
$count = count($categories); // define count
if ( ! empty( $categories ) ) { // check if not empty
foreach ( $categories as $i=>$category ) {
echo esc_html( $category->name );
if ( $i < $count - 1 )
echo $separator;
}
}