我已将以下代码添加到我的主题中functions.php。
“可用性”排序选项确实显示,但当我选择它时,它是按标题排序的,而不是库存数量。
我也尝试过使用stock_quantityas a meta_key(即使它不是元),但也没有用。
add_filter( 'woocommerce_get_catalog_ordering_args', 'custom_woocommerce_get_catalog_ordering_args' );
function custom_woocommerce_get_catalog_ordering_args( $args ) {
$orderby_value = isset( $_GET['orderby'] ) ? wc_clean( $_GET['orderby'] ) : apply_filters( 'woocommerce_default_catalog_orderby', get_option( 'woocommerce_default_catalog_orderby' ) );
if ( 'availability' == $orderby_value ) {
$args['orderby'] = 'stock_quantity';
$args['order'] = 'DESC';
$args['meta_key'] = '';
}
return $args;
}
add_filter( 'woocommerce_default_catalog_orderby_options', 'custom_woocommerce_catalog_orderby' );
add_filter( 'woocommerce_catalog_orderby', 'custom_woocommerce_catalog_orderby' );
function custom_woocommerce_catalog_orderby( $sortby ) {
$sortby['availability'] = 'Availability';
return $sortby;
}
拉莫斯之舞