我遇到了WooCommerce编辑帐户页面的问题。提交表单时,错误消息'显示名称是必填字段'显示器。我试图添加一个字段
input type="text"
和
<select name="display_name" id="display_name" >
<option selected="selected"><?php echo esc_attr( $user->display_name ); ?></option>
</select>
但是没有运气试图添加该字段。我还试图让这个领域不是必需的,但我不确定如何使用最新版本的WooCommerce。
答案 0 :(得分:12)
使其不是必需的,请使用:
add_filter('woocommerce_save_account_details_required_fields', 'wc_save_account_details_required_fields' );
function wc_save_account_details_required_fields( $required_fields ){
unset( $required_fields['account_display_name'] );
return $required_fields;
}
如果您需要它,要为其创建字段,您需要为其指定名称属性'account_display_name'
答案 1 :(得分:1)
尝试使用以下代码
<select name="display_name" id="display_name" >
<option selected="selected" value ="<?php echo esc_attr( $user->display_name ); ?>"><?php echo esc_attr( $user->display_name ); ?></option>
</select>
答案 2 :(得分:1)
您可以在页面上使用woocommerce短代码[woocommerce_my_account]
,current_user
数组args
使用get_user_by( ‘id’, get_current_user_id() )
自动设置参考:woocommerce documentation
尝试以下代码。我认为您应该使用input
代替select
<input type="text" class="woocommerce-Input woocommerce-Input--text input-text" name="account_display_name" id="account_display_name" value="<?php echo esc_attr($user->display_name);?>">