1 回答

TA貢獻1995條經(jīng)驗 獲得超2個贊
您可以使用以下命令將user_dob自定義字段添加到結帳帳戶注冊字段:
add_filter( 'woocommerce_checkout_fields', 'add_checkout_account_birthday_field' );
function add_checkout_account_birthday_field( $fields ){
$fields['account']['user_dob'] = array(
'type' => 'date',
'label' => __("Birthday", "woocommerce"),
'placeholder' => __("Please use YYYY-MM-DD as the date format.", "woocommerce"),
'class' => array('form-row-wide regular-text ltr'),
'required' => true,
'custom_attributes' => ['pattern' => '(19[0-9][0-9]|20[0-9][0-9])-(1[0-2]|0[1-9])-(3[01]|[21][0-9]|0[1-9])'],
);
return $fields;
}
add_action( 'woocommerce_checkout_update_customer', 'save_checkout_account_birthday_field', 10, 2 );
function save_checkout_account_birthday_field( $customer, $data ){
if ( isset($_POST['user_dob']) && ! empty($_POST['user_dob']) ) {
$customer->update_meta_data( 'user_dob', sanitize_text_field($_POST['user_dob']) );
}
}
代碼位于活動子主題(或活動主題)的functions.php 文件中。經(jīng)過測試并有效。
下訂單后,出生日期將保存到用戶數(shù)據(jù)中并顯示在管理員用戶的“生日”字段中。
- 1 回答
- 0 關注
- 156 瀏覽
添加回答
舉報