我在Storefront子主題functions.php
文件中添加WooCommerce自定義結算字段。
他們有一個「必需的」屬性。
目的是讓這些字段出現在頁面的頂部,計費領域之前。必需的自定義WooCommerce結帳字段不驗證輸入值
點擊提交按鈕進行支付的時候,我得到所需的自定義字段驗證錯誤(「請填寫您的姓名」),並不能與支付繼續,即使有有效數據填充字段。
任何線索如何解決此問題或者從哪裏開始調試?
這裏是functions.php
代碼:
add_action('woocommerce_before_checkout_form', 'my_custom_checkout_fields');
function my_custom_checkout_fields($checkout) {
echo '<div id="my_custom_checkout_field" class="col4-set"><h2>' . __('name') . '</h2>';
woocommerce_form_field('developer_name', array(
'type' => 'text',
'class' => array('developer_name-class form-row form-row-first'),
'label' => __('name'),
'placeholder' => __('fill in your name'),
'required' => true,
), $checkout->get_value('developer_name'));
echo '</div>';
}
/**
* Process the checkout
*/
add_action('woocommerce_checkout_process', 'my_custom_checkout_field_process');
function my_custom_checkout_field_process() {
// Check if set, if its not set add an error.
if (! $_POST['developer_name'])
wc_add_notice(__('please fill in your name'), 'error');
}
我嘗試以下,但沒有他們的幫助:
1.變化:
if (! $_POST['developer_name'])
到
if (empty($_POST['developer_name']))
2.改變觸發來自:
add_action('woocommerce_before_checkout_form', 'my_custom_checkout_fields');
到
add_action('woocommerce_after_checkout_form', 'my_custom_checkout_fields');
3.更新到最新的3.0.5 Woocomerce版本
我運行Wordpress 4.7。 4個
其他相關活動插件:
統一CPO - WooCommerce選項和價格計算公式
謝謝!這回答了這個問題,並且運作良好 – buzibuzi