小编Jos*_*one的帖子

在Woocommerce Edit Account页面中添加自定义字段

我有自定义结帐字段favorite_color,用户可以在结账时填写(不需要),类似于其他默认结帐字段...

在"编辑帐户"的"我的帐户"部分中,我想添加favorite_color自定义字段以允许客户编辑此字段值.

为此,我myaccount/form-edit-account.php通过复制和编辑其中的原始代码行来编辑模板:

    <p class="woocommerce-form-row woocommerce-form-row--first form-row form-row-first">
    <label for="account_first_name"><?php _e( 'First name', 'woocommerce' ); ?> <span class="required">*</span></label>
    <input type="text" class="woocommerce-Input woocommerce-Input--text input-text" name="account_first_name" id="account_first_name" value="<?php echo esc_attr( $user->first_name ); ?>" />
</p>
Run Code Online (Sandbox Code Playgroud)

我更换了account_first_namefavorite_color和场均显示在现场保存的值(感谢$user->favorite_color)

但不好的是,它没有得到保存.

我必须添加什么代码才能使其正常工作并获得保存?

原始模板代码是:

<?php
/**
 * Edit account form
 *
 * This template can be overridden by copying it to yourtheme/woocommerce/myaccount/form-edit-account.php.
 *
 * HOWEVER, on occasion WooCommerce will need to update template …
Run Code Online (Sandbox Code Playgroud)

php account wordpress custom-fields woocommerce

3
推荐指数
1
解决办法
1万
查看次数

在Woocommerce编辑帐户页面中添加其他自定义字段

在WooCommerce中,我已经能够在“编辑帐户”页面中添加自定义字段。我尝试添加第二个自定义字段“ Favorite Color 2”,但无法正常工作,这是我做错了。

如何在“编辑帐户”页面中添加/保存其他自定义字段?

// Add the custom field "favorite_color"
add_action( 'woocommerce_edit_account_form', 'add_favorite_color_to_edit_account_form' );
function add_favorite_color_to_edit_account_form() {
    $user = wp_get_current_user();
    ?>
        <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide">
        <label for="favorite_color"><?php _e( 'Favorite color', 'woocommerce' ); ?>
        <input type="text" class="woocommerce-Input woocommerce-Input--text input-text" name="favorite_color" id="favorite_color" value="<?php echo esc_attr( $user->favorite_color ); ?>" />
    </p>
    <?php
}

// Save the custom field 'favorite_color' 
add_action( 'woocommerce_save_account_details', 'save_favorite_color_account_details', 12, 1 );
function save_favorite_color_account_details( $user_id ) {
    // For Favorite color
    if( isset( $_POST['favorite_color'] ) )
        update_user_meta( $user_id, …
Run Code Online (Sandbox Code Playgroud)

php account wordpress custom-fields woocommerce

1
推荐指数
1
解决办法
2150
查看次数

标签 统计

account ×2

custom-fields ×2

php ×2

woocommerce ×2

wordpress ×2