自定义帖子类型作者数组问题

时间:2013-11-24 作者:user2591811

我正在尝试创建一个作者。php页面,由出现在该页面上的作者调用自定义帖子类型。我的问题是,当使用下面的代码(过滤帖子类型“video”)时,代码会输出所有自定义帖子类型,而不仅仅是“video”。注意事项是在删除数组的author键和变量时\'author\' => $author 这样做的效果是允许代码输出所需的自定义帖子类型“视频”,但来自每个作者。有没有办法解决这个问题?

Code used:

<?php
    $args = array(
        \'post_type\'      => array( \'audio\' ),
        \'posts_per_page\' => 10,
        \'author\'         => $author
    );


    $author_videos = new WP_Query( $args );

    if ( $author_videos->have_posts() ) : while ( $author_videos->have_posts() ) : $author_videos->the_post(); ?>
            <p><a href="<?php echo get_permalink(); ?>"><?php the_title(); ?></a></p>       
        <?php endwhile;
            wp_reset_postdata();
endif; ?>

1 个回复
SO网友:Nicolai Grossherr

你读过法典页了吗Author Templates? 在那里它指出:

当浏览者单击指向某个帖子作者的链接时,默认情况下,他或她会被带到一个页面,该页面按时间顺序列出该特定作者的帖子

这取决于是否有正确的链接设置,可以使用the_author_posts_link()wp_list_authors(). 不需要自定义查询,您可以通过挂接到pre_get_posts.

Code:

function wpse124293_cpts_for_author_archives( $query ) {
    if ( ! $query->is_main_query() || is_admin() )
        return;
    if ( is_author() ) {
        //only show cpt audio
        $query->set( \'post_type\', array( \'audio\' ) );
        //to show builtin post and cpt audio use: array( \'post\', \'audio\' )
    }
}
add_action( \'pre_get_posts\', \'wpse124293_cpts_for_author_archives\' );

结束

相关推荐

未在循环外工作的_Author()

索引中有以下代码。php和我希望包含这行代码(下面的代码)以在循环顶部显示作者信息。 <?php include \'author-top.php\'; ?><!--author--> 我希望它显示在标题后面,如下所示<?php get_header(); ?> <!--This is where I want my author div to display--> <?php include \'author-top.php