如果帖子少于每页的帖子,如何显示剩余帖子(在POST__IN中)?

时间:2021-01-06 作者:Prajwol

我正在产品分类页面上对产品进行分类。我想先显示销售产品,然后再显示剩余产品。我正在使用pre\\u get\\u posts挂钩修改查询。

My CODE

function modify_query( $query ) {
    if( ! is_admin() && $query->is_main_query() && is_product_category() ){
        $product_ids_on_sale = wc_get_product_ids_on_sale();
       $query->set( \'post__in\', $product_ids_on_sale );
       $query->set(\'orderby\', \'post__in\' );

    }
}

add_action( \'pre_get_posts\', \'modify_query\' );
但此查询仅显示销售产品。我想展示拉明邮报的售后产品。例如,如果my post\\u per\\u page为10,sale product为2。然后我想展示2个销售和8个剩余产品。

1 个回复
SO网友:Celso Bessa

我认为最简单但不一定是性能最好的方法是使用两个WP\\u查询循环,一个使用$query->set( \'post__in\', $product_ids_on_sale ); 和其他用途$query->set( \'post__not__in\', $product_ids_on_sale ); 因为它们是相互排斥的。一个循环用于主查询,另一个用于第二个循环show in this example 在文档中。

您需要根据$product_ids_on_sale 变量和分页。我将主要查询未销售的产品。

相关推荐

Make custom column sortable

我在自定义帖子类型中添加了一个自定义列,效果很好。我只想按标题对名字进行排序,所以我尝试了这个,function sortable_custom_columns( $columns ) { $columns[\'custom_column\'] = \'title\'; return $columns; } add_filter( \'manage_edit-custom_sortable_columns\', \'sortable_custom_colum