Введите часть искомого слова, названия или фразы...
↑ ↓
  1. Новые темы озаглавленные с маленькой буквы - удаляются без предупреждения!
  2. Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!

Выбор оплаты в зависимости от выбора доставки

Тема в разделе "Вопросы новичков", создана пользователем erto, 4 ноя 2014.

  1. erto

    erto

    Сообщения:
    43
    Симпатии:
    6
    Баллы:
    8
    Допустим, выбираю я самовывоз и высвечивается только наличными. Выбираю доставка по стране или международная и высвечивается только предоплата.
    Как такое можно реализовать?
     
  2. erto

    erto

    Сообщения:
    43
    Симпатии:
    6
    Баллы:
    8
    Нашел код который убирает пэйпал если доставка местная.

    function payment_gateway_disable_country($available_gateways) {

    global $woocommerce;

    $packages = $woocommerce->shipping->get_packages();

    foreach ( $packages as $i => $package ) {
    $chosen_method = isset( $woocommerce->session->chosen_shipping_methods[ $i ] ) ?
    $woocommerce->session->chosen_shipping_methods[ $i ] : '';

    if ('local_delivery' == $chosen_method) {
    unset($available_gateways['paypal']);
    break;
    }
    }

    return $available_gateways;

    }

    add_filter(
    'woocommerce_available_payment_gateways',
    'payment_gateway_disable_country'
    );
     
    • Нравится Нравится x 1
  3. erto

    erto

    Сообщения:
    43
    Симпатии:
    6
    Баллы:
    8
    Рассказываю как работает.

    Я не мастер в плане программирования, поэтому я код дублировал чтобы выключить способы оплаты для каждой доставки.

    function payment_gateway_disable_country($available_gateways) этот код вы можете дублировать если сделаете допустим так

    function payment_gateway_disable_country2($available_gateways)
    function payment_gateway_disable_country3($available_gateways)
    Можно и как-то его переименовать.

    'local_delivery' - способы доставки. меняем на свое, как называется можно найти в настройках доставки, пункт id в каждом способе.
    ['paypal'] - способы оплаты. Посмотреть можно тоже в настройках оплаты в id
     
    • Нравится Нравится x 1