我最初的目标是能够在侧边栏中显示Woocommerce产品,按标题排序。目前,此窗口小部件中唯一的排序选项是日期,价格,随机和销售。
我能够在 class-wc-widget-products.php 中分两部分添加标题排序选项:
'orderby' => array(
'type' => 'select',
'std' => 'date',
'label' => __( 'Order by', 'woocommerce' ),
'options' => array(
'title' => __( 'Title', 'woocommerce' ),
'date' => __( 'Date', 'woocommerce' ),
'price' => __( 'Price', 'woocommerce' ),
'rand' => __( 'Random', 'woocommerce' ),
'sales' => __( 'Sales', 'woocommerce' ),
),
在这里:
switch ( $orderby ) {
case 'title' :
$query_args['orderby'] = 'title';
break;
case 'price' :
$query_args['meta_key'] = '_price';
$query_args['orderby'] = 'meta_value_num';
break;
case 'rand' :
$query_args['orderby'] = 'rand';
break;
case 'sales' :
$query_args['meta_key'] = 'total_sales';
$query_args['orderby'] = 'meta_value_num';
break;
default :
$query_args['orderby'] = 'date';
}
此自定义工作正常,但是:
我的问题:我应该在哪里保存这个自定义的" class-wc-widget-products.php
"文件阻止它在下一个Woocommerce更新时被覆盖?
OR ... 有更优雅的方法来实现这一目标吗?谢谢!