Я хотел бы изменить функцию, содержащуюся в woocommerce. Это моя отредактированная функция ( woocommerce/includes/wc-order-functions.php
):
function wc_get_order_statuses() { $order_statuses = array( 'wc-pending' => _x( 'Pending Payment', 'Order status', 'woocommerce' ), /*'wc-processing' => _x( 'Processing', 'Order status', 'woocommerce' ),*/ 'wc-on-hold' => _x( 'On Hold', 'Order status', 'woocommerce' ), 'wc-completed' => _x( 'Completed', 'Order status', 'woocommerce' ), 'wc-cancelled' => _x( 'Cancelled', 'Order status', 'woocommerce' ), 'wc-refunded' => _x( 'Refunded', 'Order status', 'woocommerce' ), 'wc-failed' => _x( 'Failed', 'Order status', 'woocommerce' ), ); return apply_filters( 'wc_order_statuses', $order_statuses ); }
Я попытался загрузить новую функцию в файле function.php
в дочернюю тему, но, похоже, не работает.
я хочу достичь, чтобы исключить пункт «Обработка» в меню состояния. Я также пробовал css, но они не поддерживают
select option[value="wc-processing"] {display: none !important;}
Вам нужно использовать фильтры. Когда-то я написал то, что, по моему мнению, хороший учебник, объясняющий фильтры WordPress
В этом случае конечным результатом будет:
function so_39252649_remove_processing_status( $statuses ){ if( isset( $statuses['wc-processing'] ) ){ unset( $statuses['wc-processing'] ); } return $statuses; } add_filter( 'wc_order_statuses', 'so_39252649_remove_processing_status' );
Имейте в виду, что статус обработки является статусом по умолчанию при создании заказа, поэтому вам может потребоваться внести другие изменения, чтобы компенсировать его удаление.