Woocommerce ödeme sayfasındaki alan nasıl devre dışı bırakılır [kopya]

Jan 02 2021

Ödeme sayfasında adres 1 ve adres 2 alanlarımı devre dışı bırakmaya çalışıyorum. Hesap sayfamda aşağıdaki çalışma kodunu kullandım, adres 1 ve adres 2 alanını devre dışı bırakmak için ödeme sayfasında düzenleme yaptıktan sonra kodu kullanmayı denedim. Ama maalesef işe yaramıyor, lütfen yardım edin.

add_filter( 'woocommerce_checkout_fields', 'readonly_billing_account_fields', 25, 1 );
function readonly_billing_account_fields ( $billing_fields ) { // Only my account billing address for logged in users if( is_user_logged_in() && is_account_page() ){ $readonly = ['readonly' => 'readonly'];

        $billing_fields['address_1']['custom_attributes'] = $readonly;
        $billing_fields['address_2']['custom_attributes'] = $readonly;
    }
    return $billing_fields;
}

Yanıtlar

2 suii Jan 02 2021 at 14:55

is_checkout()Koşulunuzu ekleyin , ardından alanları faturalandırma_adresi_1 ve 2 olarak değiştirin.

add_filter( 'woocommerce_checkout_fields', 'readonly_billing_account_fields', 25, 1 );
function readonly_billing_account_fields ( $billing_fields ) { // Only my account billing address for logged in users if( (is_user_logged_in() && is_account_page()) || is_checkout()){ $readonly = ['readonly' => 'readonly'];

        $billing_fields['billing']['billing_address_1']['custom_attributes'] = $readonly;
        $billing_fields['billing']['billing_address_2']['custom_attributes'] = $readonly;
    }
    return $billing_fields;
}