簡體   English   中英

從WooCommerce中我的帳戶編輯地址中刪除計費電話和電子郵件字段

[英]Remove billing phone and email fields from my account edit address in WooCommerce

我正在嘗試從WooCommerce我的帳戶編輯地址中刪除電話號碼和電子郵件,但是它不起作用。 我只想在表格中顯示不帶電子郵件地址和電話號碼的地址。 我怎樣才能做到這一點?

我試過的

<div class="woocommerce-address-fields__field-wrapper">
    <?php
    unset( $address[$fields['billing_phone']] );
    foreach ( $address as $key => $field ) {
        if ( isset( $field['country_field'], $address[ $field['country_field'] ] ) ) {
            $field['country'] = wc_get_post_data_by_key( $field['country_field'], $address[ $field['country_field'] ]['value'] );
        }
        woocommerce_form_field( $key, $field, wc_get_post_data_by_key( $key, $field['value'] ) );
    }
    ?>
</div>

這來自form-edit-address.php文件。 之所以將它放在我的孩子主題上,是因為我做了其他一些更改。 因此,刪除此PHP文件中的字段將是最佳解決方案。

由於電子郵件:我認為我必須做一些事情來防止在提交表單時出錯,因為那里是必填字段。 但是不知道如何執行此操作。

以下代碼功能將從“我的帳戶”>“編輯地址”中刪除計費電話和電子郵件字段:

add_filter( 'woocommerce_billing_fields', 'remove_account_billing_phone_and_email_fields', 20, 1 );
function remove_account_billing_phone_and_email_fields( $billing_fields ) {
    // Only on my account 'edit-address'
    if( is_wc_endpoint_url( 'edit-address' ) ){
        unset($billing_fields['billing_phone']);
        unset($billing_fields['billing_email']);
    }
    return $billing_fields;
}

代碼進入活動子主題(或活動主題)的function.php文件中。 經過測試和工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM