我对这个问题已经有一段时间了,我一辈子都想不出来。我正在使用多站点,不确定这是否与此有关,所以请记住这一点。
问题:
当单击帖子或自定义帖子类型上的标签时,我只得到WP设置的默认帖子数,结果是10篇帖子。分页显示在下一篇文章和以前的文章的底部,但当我单击任一链接时,都找不到第2页,它会将我发送到404页。应该显示的是常规帖子和自定义帖子类型的混合,但不管帖子类型如何,即使有数百篇,也只会显示10篇。
起初,我使用的是展示标签的第二十种方式get_template_part()
并重定向到循环。php页面。我有意识地消除了这个过程,并创建了自己的标签。php页面,并使用默认wordpress循环查询帖子。
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
然而,我不得不使用这段代码来查询所有帖子类型,而不仅仅是普通的帖子类型。
global $wp_query;
$args = array_merge( $wp_query->query, array( \'post_type\' => array(\'post, cool_tools, tribe_events\') ) );
query_posts( $args );
我的页面分页代码如下:
<div id="nav-below" class="navigation">
<div class="nav-previous"><?php next_posts_link( __( \'<span class="meta-nav">←</span> Older posts\', \'twentyten\' ) ); ?></div>
<div class="nav-next"><?php previous_posts_link( __( \'Newer posts <span class="meta-nav">→</span>\', \'twentyten\' ) ); ?></div>
</div><!-- #nav-below -->
缺少页面的url为:
/tag/tagname/page/2/
有人能告诉我为什么WP找不到更多的标签吗?
**根据芯片的示例更新,下面是我现在如何设置的。
$paged = ( get_query_var(\'paged\') ) ? get_query_var(\'paged\') : 1;
$args = array(
\'post_type\' => \'post\',
\'tag_slug__and\' => $tagname,
\'paged\' => $paged
);
$query = new WP_Query($args);
if ( $query->have_posts() ) : while ( $query->have_posts() ) : $query->the_post();
然而,当我点击底部较新的帖子时,我仍然会看到404页,没有找到第2页的标签。