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

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

🤔 А знаете ли вы, что...
PHP поддерживает работу с куки для управления данными между запросами.


1
86
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() && $gateways_id === 'ppec_paypal' ) {
            unset($available_gateways[$gateways_id]);
        }
    }
    return $available_gateways;
}

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

For Woocommerce default Paypal payment gateway, replace 'ppec_paypal' by 'paypal'.