Описание woocommerce_default_order_status
— Filter
Хук woocommerce_default_order_status позволяет изменить статус заказа по умолчанию в WooCommerce. Он срабатывает при создании нового заказа и позволяет задать статус, который будет применяться по умолчанию.
Примеры использования
Пример изменения статуса заказа по умолчанию на ‘processing’:
add_filter('woocommerce_default_order_status', function($status) {
return 'processing';
});
В этом примере мы изменяем статус заказа по умолчанию на ‘processing’.
Пример задания статуса заказа по умолчанию на ‘completed’ для определенного типа товара:
add_filter('woocommerce_default_order_status', function($status, $order) {
if ($order->has_products('specific-product-id')) {
return 'completed';
}
return $status;
}, 10, 2);
Здесь мы меняем статус на ‘completed’, если в заказе есть определенный товар.
Пример задания статуса заказа по умолчанию в зависимости от метода оплаты:
add_filter('woocommerce_default_order_status', function($status, $order) {
if ($order->get_payment_method() === 'cod') {
return 'pending';
}
return 'processing';
}, 10, 2);
В этом примере мы изменяем статус в зависимости от метода оплаты.
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо установить статус заказа по умолчанию для новых заказов в WooCommerce
– Производительность
Хук не должен существенно влиять на производительность, так как он выполняется только при создании заказа
– Предупреждения
Убедитесь, что изменения статуса не противоречат логике обработки заказов в вашем магазине
Альтернативы
Тип: action
Этот хук позволяет выполнять действия при изменении статуса заказа
Используйте его, если нужно выполнить дополнительные действия при изменении статуса существующего заказа