2

我想构建一个显示两个不同循环的 author.php:

#1 循环应显示作者使用自定义帖子类型“新闻”制作的所有帖子。

#2 循环应显示作者通过普通帖子发布的所有帖子。

这是我的代码:

<?php $curauth = (isset($_GET['author_name'])) ? get_user_by('slug', $author_name) :     get_userdata(intval($author)); ?>

这一行将识别当前的作者......这是我的循环:

1

<?php
$args = array( 'post_type' => 'news','author=$curauth->ID','posts_per_page' => -1 ); ?>

<?php $loop = new WP_Query( $args ); ?>

<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>

<h4><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h4>
<?php   endwhile; ?>

2

    <?php
$query = new WP_Query(array( 'post_type' => 'post','author=$curauth-  >ID','posts_per_page' => -1 ));
while ( $query->have_posts() ) : $query->the_post(); ?>
<h4><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h4>
<?php   endwhile; ?>

我猜这个问题是 >>' author=$curauth- >ID'<< 在字符串中不起作用。它输出所有帖子,并且不会在不同作者之间分开。

4

1 回答 1

0

也许你可以尝试使用通常的 WP 循环

 <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

并添加:

wp_reset_query(); 

在第一个列表之后。

在这种情况下,我认为您不需要 custum WP_QUery,如果您保留它的样本,这可能会消除一些错误或错误。

希望这会有所帮助

于 2013-02-23T01:52:47.753 回答