나는 사용자가 내 계정 섹션에서 ... 체크 아웃 (필요하지 않음), 다른 기본 체크 아웃 필드 imilar 동안는 Woocommerce 계정 편집 페이지에서 사용자 정의 필드를 추가
를 기입 할 수있는 사용자 정의 체크 아웃 필드 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>
나는 나의
favorite_color와 필드도 보여줍니다 저장된 값으로
account_first_name 교체 현장에서 (
$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 files and you
* (the theme developer) will need to copy the new files to your theme to
* maintain compatibility. We try to do this as little as possible, but it does
* happen. When this occurs the version of the template file will be bumped and
* the readme will list any important changes.
*
* @see https://docs.woocommerce.com/document/template-structure/
* @author WooThemes
* @package WooCommerce/Templates
* @version 2.6.0
*/
if (! defined('ABSPATH')) {
exit;
}
do_action('woocommerce_before_edit_account_form'); ?>
<form class="woocommerce-EditAccountForm edit-account" action="" method="post">
<?php do_action('woocommerce_edit_account_form_start'); ?>
<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>
<p class="woocommerce-form-row woocommerce-form-row--last form-row form-row-last">
<label for="account_last_name"><?php _e('Last name', 'woocommerce'); ?> <span class="required">*</span></label>
<input type="text" class="woocommerce-Input woocommerce-Input--text input-text" name="account_last_name" id="account_last_name" value="<?php echo esc_attr($user->last_name); ?>" />
</p>
<div class="clear"></div>
<p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide">
<label for="account_email"><?php _e('Email address', 'woocommerce'); ?> <span class="required">*</span></label>
<input type="email" class="woocommerce-Input woocommerce-Input--email input-text" name="account_email" id="account_email" value="<?php echo esc_attr($user->user_email); ?>" />
</p>
<fieldset>
<legend><?php _e('Password change', 'woocommerce'); ?></legend>
<p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide">
<label for="password_current"><?php _e('Current password (leave blank to leave unchanged)', 'woocommerce'); ?></label>
<input type="password" class="woocommerce-Input woocommerce-Input--password input-text" name="password_current" id="password_current" />
</p>
<p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide">
<label for="password_1"><?php _e('New password (leave blank to leave unchanged)', 'woocommerce'); ?></label>
<input type="password" class="woocommerce-Input woocommerce-Input--password input-text" name="password_1" id="password_1" />
</p>
<p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide">
<label for="password_2"><?php _e('Confirm new password', 'woocommerce'); ?></label>
<input type="password" class="woocommerce-Input woocommerce-Input--password input-text" name="password_2" id="password_2" />
</p>
</fieldset>
<div class="clear"></div>
<?php do_action('woocommerce_edit_account_form'); ?>
<p>
<?php wp_nonce_field('save_account_details'); ?>
<input type="submit" class="woocommerce-Button button" name="save_account_details" value="<?php esc_attr_e('Save changes', 'woocommerce'); ?>" />
<input type="hidden" name="action" value="save_account_details" />
</p>
<?php do_action('woocommerce_edit_account_form_end'); ?>
</form>
<?php do_action('woocommerce_after_edit_account_form'); ?>
이상적으로는 템플릿 자체를 수정하는 대신이 템플릿에서 호출되는 동작 후크 중 하나를 통해 삽입해야합니다. – CBroe
난 그냥 사용자가 "favorite_color"라는 내 예제에서는 사용자 지정 체크 아웃 필드를 변경하려면). form-edit-account.php에 어떤 코드를 추가해야합니까? – Josione