WC_API_Resource::delete( int $id, string $type, bool $force = false )

Delete a given resource


Description Description


Parameters Parameters

$id

(Required) the resource ID

$type

(Required) the resource post type, or customer

$force

(Optional) true to permanently delete resource, false to move to trash (not supported for customer)

Default value: false


Top ↑

Return Return

(array|WP_Error)


Top ↑

Source Source

File: includes/legacy/api/v2/class-wc-api-resource.php

359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
protected function delete( $id, $type, $force = false ) {
 
    if ( 'shop_order' === $type || 'shop_coupon' === $type ) {
        $resource_name = str_replace( 'shop_', '', $type );
    } else {
        $resource_name = $type;
    }
 
    if ( 'customer' === $type ) {
 
        $result = wp_delete_user( $id );
 
        if ( $result ) {
            return array( 'message' => __( 'Permanently deleted customer', 'woocommerce' ) );
        } else {
            return new WP_Error( 'woocommerce_api_cannot_delete_customer', __( 'The customer cannot be deleted', 'woocommerce' ), array( 'status' => 500 ) );
        }
    } else {
 
        // delete order/coupon/webhook
        $result = ( $force ) ? wp_delete_post( $id, true ) : wp_trash_post( $id );
 
        if ( ! $result ) {
            return new WP_Error( "woocommerce_api_cannot_delete_{$resource_name}", sprintf( __( 'This %s cannot be deleted', 'woocommerce' ), $resource_name ), array( 'status' => 500 ) );
        }
 
        if ( $force ) {
            return array( 'message' => sprintf( __( 'Permanently deleted %s', 'woocommerce' ), $resource_name ) );
        } else {
            $this->server->send_status( '202' );
 
            return array( 'message' => sprintf( __( 'Deleted %s', 'woocommerce' ), $resource_name ) );
        }
    }
}

Top ↑

Changelog Changelog

Changelog
Version Description
2.1 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.