如何按自定义分类对帖子进行排序?

时间:2017-07-17 作者:Neelam Khan

我正在尝试按自定义分类法对帖子进行排序。我有一个自定义的帖子类型course-cpt 我在其中创建了自定义分类法,我需要按course-level (这是分类学术语),因此显示如下:

课程名称级别1、课程名称级别2、课程名称级别3等我目前的职能如下。php:

add_action( \'pre_get_posts\', \'reorderByCourseLevel\' );

function reorderByCourseLevel( $query ) {

if ( $query->is_main_query() && !is_admin() ) {
        if ( $query->is_tax() || $query->is_post_type_archive(\'subject\') ) {
            $taxquery = array(
               \'taxonomy\' => \'course-level\'
            );
            $query->set(\'tax_query\', $taxquery);
            $query->set(\'orderby\', \'title\');   
            $query->set(\'order\', \'ASC\');
       }       
    }
}
我的代码中是否缺少任何内容。。?

1 个回复
SO网友:Ray Gulick

如果我正确理解你的问题,我想我可能会在这篇博文中找到你的答案:https://evowebdev.com/2017/05/using-a-dropdown-menu-to-filter-a-custom-post-type-with-custom-taxonomy/

此解决方案专门使用自动填充分类术语的select form元素对CPT帖子进行排序(即,与其使用pre\\u get\\u帖子对帖子进行预排序,不如让站点访问者按照他们选择的分类术语进行排序)。如果预先排序真的很重要,这可能不是您的答案。

然而,我认为允许人们选择查看其中一个级别的所有课程是有用的。

也就是说,下面的演示不会以alpha顺序出现吗?

课程名称1级课程名称2级课程名称3级课程名称

结束

相关推荐