显示按自定义分类分组的自定义帖子类型中的所有帖子。如何按字母顺序对帖子进行排序,按ID对术语进行排序?

时间:2017-06-21 作者:deathlock

我有一个自定义的帖子类型,叫做books 分类命名为genre. 内部genre 有许多术语,例如horror, romance,喜剧等。

我想在归档页面中显示它们,按每个术语分组。所以我用Chip Bennet\'s fantastic code.

然而,我对排序有问题。

代码根据名称的字母顺序对术语进行排序,并根据最新情况对帖子进行排序。所以看起来是这样的:

喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧。我想根据tag\\u ID对术语进行排序,并根据其字母名称对图书列表进行排序。所以应该是这样的:

科幻小说(tag_ID number 1)<爱情故事(tag_ID number 2)(tag_ID number 3)(tag_ID number 4)我试图搞乱查询,所以看起来像这样

$member_group_query = new WP_Query( array(
    \'post_type\' => \'member\',
    \'orderby \' => \'name\', // sort the books alphabetically
    \'tax_query\' => array(
        array(
            \'taxonomy\' => \'member_group\',
            \'field\' => \'slug\',
            \'terms\' => array( $member_group_term->slug ),
            \'orderby \' => \'ID\', // sort the genre according to its ID
            \'operator\' => \'IN\'
        )
    )
) );
但一切都没有改变。我检查过了Wordpress Codex on WP_Query 确保,但仍然无济于事。有什么帮助吗?

1 个回复
最合适的回答,由SO网友:dbeja 整理而成

我认为您需要首先对其他查询中的类型术语进行排序:

$genres = get_terms( \'genre\', \'orderby=term_id\' );
然后在帖子上查询每种类型(如Chip Bennet的方法):

$member_group_query = new WP_Query( array(
    \'post_type\' => \'member\',
    \'orderby\' => \'name\',
    \'tax_query\' => array(
        array(
            \'taxonomy\' => \'member_group\',
            \'field\' => \'slug\',
            \'terms\' => array( $member_group_term->slug ),
            \'operator\' => \'IN\'
        )
    )
) );

结束

相关推荐

POST获取忽略SORT_COLUMN?

我正在为我的投资组合使用下面的子页面代码。出于某种原因,它似乎忽略了我在页面上设置的顺序。有什么帮助吗? <?php $args = array( \'post_type\' => \'page\', \'sort_column\' => \'menu_order\', \'post_status\' => \'publish\', \'posts_per_page\

显示按自定义分类分组的自定义帖子类型中的所有帖子。如何按字母顺序对帖子进行排序,按ID对术语进行排序? - 小码农CODE - 行之有效找到问题解决它

显示按自定义分类分组的自定义帖子类型中的所有帖子。如何按字母顺序对帖子进行排序,按ID对术语进行排序?

时间:2017-06-21 作者:deathlock

我有一个自定义的帖子类型,叫做books 分类命名为genre. 内部genre 有许多术语,例如horror, romance,喜剧等。

我想在归档页面中显示它们,按每个术语分组。所以我用Chip Bennet\'s fantastic code.

然而,我对排序有问题。

代码根据名称的字母顺序对术语进行排序,并根据最新情况对帖子进行排序。所以看起来是这样的:

喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧,喜剧。我想根据tag\\u ID对术语进行排序,并根据其字母名称对图书列表进行排序。所以应该是这样的:

科幻小说(tag_ID number 1)<爱情故事(tag_ID number 2)(tag_ID number 3)(tag_ID number 4)我试图搞乱查询,所以看起来像这样

$member_group_query = new WP_Query( array(
    \'post_type\' => \'member\',
    \'orderby \' => \'name\', // sort the books alphabetically
    \'tax_query\' => array(
        array(
            \'taxonomy\' => \'member_group\',
            \'field\' => \'slug\',
            \'terms\' => array( $member_group_term->slug ),
            \'orderby \' => \'ID\', // sort the genre according to its ID
            \'operator\' => \'IN\'
        )
    )
) );
但一切都没有改变。我检查过了Wordpress Codex on WP_Query 确保,但仍然无济于事。有什么帮助吗?

1 个回复
最合适的回答,由SO网友:dbeja 整理而成

我认为您需要首先对其他查询中的类型术语进行排序:

$genres = get_terms( \'genre\', \'orderby=term_id\' );
然后在帖子上查询每种类型(如Chip Bennet的方法):

$member_group_query = new WP_Query( array(
    \'post_type\' => \'member\',
    \'orderby\' => \'name\',
    \'tax_query\' => array(
        array(
            \'taxonomy\' => \'member_group\',
            \'field\' => \'slug\',
            \'terms\' => array( $member_group_term->slug ),
            \'operator\' => \'IN\'
        )
    )
) );

相关推荐

Sort posts in a specific way

我目前有6个职位属于“服务”类别。每个服务都有\\u内容和1-2个文档(小册子和/或T&C以及外部表单)现在,假设这6篇文章的ID为1,2,3,4,5,6,但我希望它是2,5,3,1,4,6。这可能吗?如果是,我将如何实现它?