我們已經學過了如何將前台的產品按有貨在先和無貨在後進行排序,但對於後台的管理員和商店經理來說,如何做到完全相同呢?
有時商店存在大量 「已售/無貨 」的產品,產品表看起來亂亂的(有貨和無貨穿插混合),本文介紹的方法可以實現:當訪問產品列表時,即:/wp-admin/edit.php?post_type=product,所有產品將按庫存狀態(有貨->無貨)排序。
一旦下面的代碼段被啟動,WooCommerce產品將按庫存狀態排序(在載入時)。
PHP代碼段:在woocommerce產品列表中,按庫存狀態對產品進行排序
/**
* @snippet Product Sorted By Stock @ WordPress Dashboard
*/
add_action( 'pre_get_posts', 'bbloomer_sort_products_by_stock_status_admin' );
function bbloomer_sort_products_by_stock_status_admin( $query ){
global $typenow;
if ( is_admin() && $query->is_main_query() && $typenow == 'product' ) {
if ( ! isset( $_GET['orderby'] ) ) {
$query->set( 'orderby', 'meta_value' );
$query->set( 'meta_key', '_stock_status' );
$query->set( 'order', 'ASC' );
}
}
}