我有一个公文包网站,在那里我的公文包更新应该可以portfolio 和blog 页面,以及显示我的homepage.
缩略图工作正常;如果一篇文章分为两个类别,缩略图将同时显示在两个类别中。
我的问题是,在博客和公文包类别中标记为要发布的博客帖子只会出现在我的公文包中。以下是我在博客中使用的内容:
<div id="blog">
<?php query_posts(\'cat=-4\'); ?>
<?php if(have_posts()) : while(have_posts()) : the_post(\'cat=-3,4\'); ?>
<div class="post-title">
<h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
</div><!-- end post-title -->
<div class="post">
<?php the_content(\'read more...\'); ?>
</div><!-- end post -->
<div class="post-meta">
<p><?php the_date(); ?> | <?php the_tags(\'tags:\', \', \', \'<br />\'); ?></p>
</div><!-- end post-meta -->
<?php endwhile; ?>
<?php else : ?>
<p>I\'m not sure what you\'re looking for.</p>
<?php endif; ?>
</div><!-- end blog -->
有什么想法可能导致这种情况或如何补救?
最合适的回答,由SO网友:Fabien Quatravaux 整理而成
第一件事:您不应该直接使用类别ID。使用slugs 相反,它更容易维护。
<?php query_posts(\'category_name=portfolio\'); ?>
第二件事:为什么要在
the_post
? 此函数不接受任何参数(
see the Codex).
第三件事:呼吁query_posts(\'cat=-4\');
将显示除第4类(公文包,如果I guess well). 这不是你想要的,对吧?
你想要的是query_posts(\'category_name=portfolio\');
在您的公文包页面中query_posts(\'category_name=blog\');
在您的博客页面中。