我在一个网站上工作,对其中一个类别有问题。网站上有大量内容,有七个不同的类别。除最后一个类别外,所有类别都显示正确的帖子。我到处搜索,没有看到这个确切的问题出现(通常,人们只是在所有类别中都有错误的帖子)。
请查看我正在使用的URL。是的http://www.glossandglam.com/blog/ 不起作用的类别是“教程”感谢您提供的任何帮助。
编辑以下代码了解更多详细信息:
<?php if (have_posts()) : ?>
<ul style="list-style-type:none;">
<?php
if ($paged == 0)
$offset = 0;
else
$offset = ($paged - 1) * 11;
global $post;
$category = get_the_category($post->ID);
$category = $category[0]->cat_ID;
$myposts = get_posts(array(\'numberposts\' => 11, \'offset\' => $offset, \'category__in\' => array($category), \'post__not_in\' => array($post->ID),\'post_status\'=>\'publish\'));
foreach($myposts as $post) :
setup_postdata($post);
?>
<li id="category_li">
<div id="image_con">
<div id="image_recent">
<a href="<?php the_permalink(); ?>"><?php set_post_thumbnail_size( 200, 200 );
the_post_thumbnail(); ?></a>
</div>
</div>
<div id="cr_content">
<a href="<?php the_permalink(); ?>">
<div class="gloss_glam_font"> <?php the_title(); ?></div>
<hr>
<div class="excerpt_cat"><?php the_excerpt(); ?></div>
</a>
</div>
<div id="clearfix">
</div>
</li>
<?php endforeach; ?>
<?php wp_reset_query(); ?>
</ul>
一个简单的解释是,我们每页显示11篇文章,底部有一个自定义分页。我正在使用“Category Post List Widget”插件为正在生成的列表项设置样式。
最合适的回答,由SO网友:Chip Bennett 整理而成
问题几乎肯定是您的自定义循环。
我猜这是你的问题:
$category = get_the_category($post->ID);
$category = $category[0]->cat_ID;
此外,我猜
$post
此处查询的对象定义了多个类别术语。因此
$category[0]
正在返回除“教程”之外的其他内容。
最简单的解决方案:确保所有帖子只定义了一个类别术语。
更复杂但更经得起未来考验且更稳定的解决方案:取消使用类别帖子列表小部件插件,返回使用默认查询循环,并根据归档索引页面的需要定义标记/样式。