2017-01-31 53 views
1

我試圖刪除結帳頁面中的密碼字段。刪除woocommerce結帳頁面中的密碼字段

這是我曾嘗試(代碼是我functions.php主題文件)

// Hook in 
add_filter('woocommerce_default_address_fields' , 'custom_override_default_address_fields'); 

// Our hooked in function - $address_fields is passed via the filter! 
function custom_override_default_address_fields($address_fields) { 
    $checkout_fields['account']['required'] = false; 

    return $checkout_fields; 
} 

但沒有奏效。

在woocommerce結帳頁面中刪除密碼字段的鉤子是什麼?

謝謝。

回答

0

掛鉤woocommerce_default_address_fields僅用於默認地址字段,而不是該帳戶領域。

爲了使密碼字段可選您應該需要使用woocommerce_checkout_fields掛鉤,這種方式:

add_filter('woocommerce_checkout_fields' , 'custom_override_checkout_fields'); 
function custom_override_checkout_fields($fields) { 
    // There is 2 password fields 
    fields['account']['account_password']['required'] = false; 
    fields['account']['account_password-2']['required'] = false; 

    return $fields; 
} 

要刪除這些密碼字段,你應該需要使用unset() PHP函數是這樣的:

add_filter('woocommerce_checkout_fields' , 'custom_override_checkout_fields'); 
function custom_override_checkout_fields($fields) { 
    unset($fields['account']['account_password']); 
    unset($fields['account']['account_password-2']); 

    return $fields; 
} 

但我不知道那是真的有可能,因爲它的東西必須在WooCommerce結帳過程中,當您啓用了在結帳頁面註冊選項...

代碼放在您的活動子function.php文件主題(或主題)或任何插件文件。


官方參考:Customizing checkout fields using actions and filters

相關問題