Stripe взимает с пользователя плату несколько раз после размещения первоначального заказа (полоса woocommerce)Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Stripe взимает с пользователя плату несколько раз после размещения первоначального заказа (полоса woocommerce)

Сообщение Anonymous »


В woocommerce после оформления заказа создается заказ, но вместо страницы благодарности пользователь перенаправляется на страницу дополнительных продаж, где пользователь может обновить существующий заказ, добавив новый товар. Если они решат добавить его, заказ будет обновлен.

У меня есть этот код, он должен взимать с пользователя дополнительную плату, если он решит купить дополнительный товар, но я получаю критическую ошибку. Может не правильно написал?
if ( is_page('upsell-1') && isset($_GET['woocommerce_checkout_place_order'])) ) { $order_id = WC()->session->get('original_order_id'); $selected_product_id = isset($_GET['selected_product_id']) ? sanitize_text_field($_GET['selected_product_id']) : ''; if ($order_id > 0 && !empty($selected_product_id)) { $order = wc_get_order($order_id); $order->add_product(wc_get_product($selected_product_id)); $order->calculate_totals(); $options = get_option('woocommerce_stripe_settings'); $stripeKey = 'да' === $options['testmode'] ? $options['test_secret_key'] : $options['secret_key'] ; \Stripe\Stripe::setApiKey($stripeKey); $stripe_customer_id = $order->get_meta('_stripe_customer_id'); $product_id = absint($_GET['selected_product_id']); $product = wc_get_product($product_id); $product_value = $product->get_price(); $charge = \Stripe\Charge::create([ 'сумма' => $product_value, 'валюта' => 'доллары США', 'клиент' => $stripe_customer_id, ]); WC()->session->set('upsell-1-viewed', true); wp_redirect('/upsell-2'); Выход; } }
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»