Как отключить определенный плагин для незарегистрированных пользователей в WooCommerce?

#php #wordpress #woocommerce #paypal #payment-method

#php #wordpress #woocommerce #paypal #способ оплаты

Вопрос:

Я пытаюсь отключить WooCommerce платежный шлюз PayPal Checkout для незарегистрированных пользователей. Как я могу это сделать?

Ответ №1:

Обновлено — Следующее отключит платежный шлюз Paypal Checkout для незарегистрированных пользователей:

 add_filter( 'woocommerce_available_payment_gateways', 'conditionally_disable_paypal_payment_gateways', 10, 1 );
function conditionally_disable_paypal_payment_gateways( $available_gateways ) {
    if ( is_admin() ) return $available_gateways; // Only on frontend

    // Loop through payment gateways
    foreach( $available_gateways as $gateways_id => $gateways ){
        if ( ! is_user_logged_in() amp;amp; $gateways_id === 'ppec_paypal' ) {
            unset($available_gateways[$gateways_id]);
        }
    }
    return $available_gateways;
}
  

Код вводится functions.php файл вашей активной дочерней темы (или active theme). Протестировано и работает.

Для платежного шлюза Paypal по умолчанию в Woocommerce замените 'ppec_paypal' на 'paypal' .