0
こんにちは、私はwoocommerceのカスタムチェックアウトフィールドに質問があります。 チェックアウトフォームにカスタムフィールドを作成しましたが、すべてが完全に機能していました。このフィールドには、顧客カード番号が含まれています。私はまた、一度だけ入力されたフィールド値をwp-usermetaに保存して、注文と一緒に来ないようにしましたが、顧客の詳細と一緒に保存されます。woocommerceのカスタムチェックアウトフィールドを管理する
今私は次のことをしたいと思います。登録された顧客がショップに戻ったら、毎回カード番号を挿入する代わりに、新しいフィールド(empytでない場合)が自動的に表示されます。
/**
* Add the field to the checkout
*/
add_action ('woocommerce_after_order_notes', 'checkout_w55_card_number');
function checkout_w55_card_number($checkout) {
echo '<div id="checkout_w55_card_number"><h2>' . __('N. tessera W55') . '</h2>';
woocommerce_form_field('w55_card_number', array(
'type' => 'text',
'class' => array('w55-card-number-class form-row-wide'),
'label' => __('Inserisci n. tessera W55'),
'placeholder' => __('Inserisci numero'),
), $checkout->get_value('w55_card_number'));
echo '</div>';
}
が、私はこのように、この方法でそれを再アレンジしてみましたが、それはdoesnの:
私がチェックアウトページにカスタムフィールドを示すために私の子供のテーマfucntions.phpに追加し、元の機能でした仕事は
add_action ('woocommerce_after_order_notes', 'checkout_w55_card_number');
function checkout_w55_card_number($checkout) {
//extracts the value of the w55_card_number field
$w55_card = get_user_meta($user_id, 'w55_card_number', true);
//condition is the w55_card_number field is empty or not
if (!empty($w55_card)) : echo $w55_card; else :
echo '<div id="checkout_w55_card_number"><h2>' . __('N. tessera W55') . '</h2>';
woocommerce_form_field('w55_card_number', array(
'type' => 'text',
'class' => array('w55-card-number-class form-row-wide'),
'label' => __('Inserisci n. tessera W55'),
'placeholder' => __('Inserisci numero'),
), $checkout->get_value('w55_card_number'));
echo '</div>';
endif;
}
どのような提案ですか?
あー素晴らしい!!ありがとう@ミルザップ! –
あなたは歓迎です – MirzaP