Woocommerce API - создание заказа с плавающим количеством - PullRequest
0 голосов
/ 23 сентября 2018

К сожалению, в моем магазине все количества товара находятся в свободном обращении.Я использовал приведенный ниже код, чтобы принять значение с плавающей точкой как количество на моем веб-сайте.

// Removes the WooCommerce filter, that is validating the quantity to be an int
remove_filter('woocommerce_stock_amount', 'intval');

// Add a filter, that validates the quantity to be a float
add_filter('woocommerce_stock_amount', 'floatval');

Но, когда я пытаюсь создать заказ с помощью API из моего мобильного приложения, я не принимаю значение с плавающей точкой.

$woocommerce->post('orders', $getData);

Кто-нибудь, помогите мне, как я могу создать заказ, используя API WooCommerce, чтобы принимать количества с плавающей запятой.

1 Ответ

0 голосов
/ 25 сентября 2018

К сожалению, вы не можете достичь этого с помощью последней версии API.Вы можете попробовать любое из приведенных ниже решений, но НЕ рекомендуется .

Решение 1: Использование Legacy API .

Решение 2: Непосредственно изменить 'type' => integer на 'type' => float (около 1190) в «woocommerce / includes / api / class-wc-rest-orders-controller.php», который отвечает заколичество (но обратите внимание, что вам нужно менять каждый раз, когда вы обновляете плагин).

'quantity'     => array(
    'description' => __( 'Quantity ordered.', 'woocommerce' ),
    'type'        => 'float', // change here
    'context'     => array( 'view', 'edit' ),
),
...