【问题标题】:Wordpress loop: Grouping by category?Wordpress 循环:按类别分组?
【发布时间】:2010-02-26 16:28:43
【问题描述】:

我需要通过 wordpress 循环获取所有帖子,但我需要将它们按类别和每个类别中的时间顺序分组。有人知道我应该怎么做吗?

谢谢!

【问题讨论】:

    标签: mysql wordpress


    【解决方案1】:

    您可以使用新的 WP 查询按类别抓取帖子,并按时间顺序从最新到最旧或其他方式显示它们。这适用于页面模板中的标准 WP 循环(如果启用了 php 执行,则在帖子/页面编辑器中),并且可以在循环中使用任意次数而不会与其他查询冲突。将“mycategory”更改为您自己的类别,并将 showposts=1 更改为要显示的帖子数,或更改 -1 以显示全部。

    <?php $my_query = new WP_Query('category_name=mycategory&showposts=1'); ?>
    <?php while ($my_query->have_posts()) : $my_query->the_post(); ?>
    <a href="<?php the_permalink() ?>" title="<?php the_title(); ?>">
    <?php the_title(); ?></a><br /><?php the_content(); ?><?php endwhile; ?>
    

    Function Reference/WP Query « WordPress Codex

    【讨论】:

    • 感谢您发布课程!但是有没有办法用它编写自定义查询?
    • 这不是一门课;这是一组功能,它将按类别和日期对您的帖子进行分组。你到底想查询什么?帖子数?排序?如果您谈论的是 Mysql 查询,那与您当前的问题不同。
    • 也许我措辞不正确。对于那个很抱歉。我希望能够从 wordpress 中获取所有帖子,并获得这样的结果集:按类别分组的帖子和每个类别中按时间顺序排列的帖子。
    • 我的回答是这样的;为每个类别运行这些新查询块之一,将 showposts=1 更改为 -1 以显示所有帖子。自定义查询到底是什么意思?在 MySQL 中?这是一个不同的问题。
    【解决方案2】:

    Look at this 如果这没有按时间顺序排序,那么您只需将“post_date DESC”添加到相应的查询中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-27
      • 2018-08-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-24
      相关资源
      最近更新 更多