【问题标题】:Wordpress - category.php - not all posts, or incorrect categories are appearing in category archive. (pagination confusion etc)Wordpress - category.php - 并非所有帖子或不正确的类别都出现在类别存档中。 (分页混乱等)
【发布时间】:2011-09-16 20:20:54
【问题描述】:

在我的一生中,我无法理解为什么我在让我的类别档案工作时遇到这么多麻烦。

我想要的只是基于永久链接的类别:

http://siteurl/parent_cat/child_cat

显示该类别中的所有帖子,每页 10 个,并正确分页。

在没有对查询进行任何修改的情况下,该网站仅在第 1 页上显示了大约 8 个帖子,然后在第 2 页上显示了 2 个帖子,在第 3 页上没有任何帖子,但该类别中有超过 44 个帖子。

如果我使用the solution on this page,或以任何方式修改查询,它似乎会显示每个类别的帖子。

我的模板 category.php 本质上是 index.php 的副本,那么为什么按类别限制帖子有这么多问题??

供参考,分类结构是这样的:

帖子(父) - 音乐(儿童) - 艺术(儿童) - 电影(儿童) - 杂项(儿童)

那么网址是这样的: http://siteurl/posts/music 等等

它只是从父类别中查询所有帖子吗?如果是这样,如何强制它仅从永久链接确定的特定和当前子类别中获取帖子?

【问题讨论】:

  • 您不应该在分类页面上进行任何查询。复制 2010 年 category.php 的代码并从那里开始工作。

标签: wordpress templates categories


【解决方案1】:

如果您的 category.php 使用 have_post(); the_post(); 又名“循环”,如果您强制在页面中显示特定数量的帖子,您将无法获得正确的分页。

“循环”始终遵循管理面板中设置的每页帖子数。 如果您在管理面板中将其(每页帖子数)更改为 10,您将获得正确的分页。但是,如果您希望该设置保持不变,您需要自己查询帖子并在不使用“循环”的情况下显示它。

您可以使用foreach($post in $posts) 代替have_post();the_post();

【讨论】:

    【解决方案2】:

    您可以尝试使用二十一模板并尝试指定类别

    <?php query_posts('category_name=special_cat&showposts=10'); ?>
    

    【讨论】:

      猜你喜欢
      • 2012-07-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多