为相关作者帖子调用自定义帖子类型

时间:2013-11-22 19:51:06

标签: wordpress custom-post-type

有人知道如何在get_related_author_posts()查询中调用自定义帖子类型(CPT)吗?

我在我的functions.php文件中使用该函数,然后在<?php echo get_related_author_posts(); ?>的CPT模板中调用它,以便同一作者的其他内容和内容类型的链接可以出现在模板中。

我所做的所有研究表明,我应该能够通过向函数添加CPT查询'post_type' => 'webarticle'来实现我想要的目标。

似乎很简单,对吧?

但这不适合我。以下是我的代码。关于如何做到这一点或我出错的任何提示将不胜感激。谢谢!

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

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

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

    return $output;
}

这是新标记 - 仍然无效 - 添加了wp_reset_query()功能。

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' => 5 ) );

    wp_reset_query()

    $args = array('post_type' => 'webarticle');
    $query = new WP_Query( $args );
    if ( $query->have_posts() ) {  
    while ( $query->have_posts() ) {  
        $query->the_post();  
        //code for each post from query//

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

    return $output;

    }
} 

}

1 个答案:

答案 0 :(得分:0)

对不起,我不知道如何在评论中放置格式化的答案 - 这就是我提出答案的原因,所以请不要责怪我,如果它毫无价值 - 这只是建议:)

$args = array('post_type' => 'webarticle');
$query = new WP_Query( $args );
if ( $query->have_posts() ) {  
    while ( $query->have_posts() ) {  
        $query->the_post();  
        //code for each post from query
    }
}