在循环之外获取the_category

时间:2013-04-08 05:14:28

标签: wordpress

我正在一个拥有自定义作者页面的网站上工作,在作者页面上它有一个最近的作者帖子小部件,该小部件显示该作者的其他帖子。这个网站有多个作者,因此每个帖子都有所不同,我还没有找到一个这样做的插件。我正在尝试显示帖子缩略图,标题和类别名称。

我正在使用显示标题和缩略图的功能,但它没有类别。我尝试使用以下内容添加类别:the_category('','multiple',$ authors_post-> ID),不幸的是它显示了第一个li中的所有类别。而不是每个帖子。

以下是我正在使用的内容:

function get_related_author_posts() {
global $authordata, $post;

$authors_posts = get_posts( array( 'author' => $authordata->ID,
  'post__not_in' => array( $post->ID ), 'posts_per_page' => 3 ) );

$output = '<ul>';
foreach ( $authors_posts as $authors_post ) {
    $output .= '<li>' . get_the_post_thumbnail( $authors_post->ID, 'xsmall-thumb' )
       . '<p>' . the_category(' ','multiple',$authors_post->ID)
       . '</p> <a href="' . get_permalink( $authors_post->ID )
       . '">' . apply_filters( 'the_title', $authors_post->post_title,
       $authors_post->ID ) . '</a></li>';
}
$output .= '</ul>';

return $output;

}

任何帮助将不胜感激, 谢谢!

2 个答案:

答案 0 :(得分:0)

请尝试使用此代码,

<?php
 $cat=1;
 $yourcat = get_category($cat);
 if ($yourcat) 
 {
    echo '<h2>' . $yourcat->name . '</h2>';
 }
?>

获取类别名称

答案 1 :(得分:0)

尝试一些像

这样的事情
function get_related_author_posts() {
global $authordata, $post;

$authors_posts = get_posts( array( 'author' => $authordata->ID, 'post__not_in' => array( $post->ID ), 'posts_per_page' => 3 ) );

$output = '<ul>';
foreach ( $authors_posts as $authors_post ) {
$category = get_the_category($authors_post->ID);
foreach($category as $c){
$cat=$c->cat_name.' '.$cat;
}

    $output .= '<li>' . get_the_post_thumbnail( $authors_post->ID, 'xsmall-thumb' ) . '<p>' . $cat . '</p> <a href="' . get_permalink( $authors_post->ID ) . '">' . apply_filters( 'the_title', $authors_post->post_title, $authors_post->ID ) . '</a></li>';
}
$output .= '</ul>';

return $output;
}

希望这对你有用..