in
Woocommerce 3.3.0
在订单列表中。 当您单击眼睛时,它会显示订单的 AJAX 预览。
该操作由以下人员处理: get_order_preview_actions_html( WC_Order $order ( 在
WC_Admin_List_Table_Orders.php
如何取消设置"completed"
按钮,
并将"processing"
按钮重命名为"approved"
在我的functions.php
?
谢谢。
等等!
懒惰。。。现在只是更换整个东西。
如果有人能找到一种更干净、更漂亮、更安全的方法...... 请。
add_filter('woocommerce_admin_order_preview_actions','remove_complete',20,2); function remove_complete( $actions, $order ){
$actions = array();
$status_actions = array();
if ( $order->has_status( array( 'pending', 'on-hold' ) ) ) {
$status_actions['processing'] = array(
'url' => wp_nonce_url( admin_url( 'admin-ajax.php?action=woocommerce_mark_order_status&status=processing&order_id=' . $order->get_id() ), 'woocommerce-mark-order-status' ),
'name' => __( 'Approve', 'woocommerce' ),
'action' => 'processing',
);
}
if ( $order->has_status( array( 'processing' ) ) ) {
$status_actions['complete'] = array(
'url' => wp_nonce_url( admin_url( 'admin-ajax.php?action=woocommerce_mark_order_status&status=completed&order_id=' . $order->get_id() ), 'woocommerce-mark-order-status' ),
'name' => __( 'Complete', 'woocommerce' ),
'action' => 'complete',
);
}
if ( $status_actions ) {
$actions['status'] = array(
'group' => __( 'Change status: ', 'woocommerce' ),
'actions' => $status_actions,
);
}
return $actions; }