2017-06-23 8 views
0

私のプロジェクトでは、woocommerce用の直接チェックアウトプラグインを使用して1ページでカートとチェックアウトを利用しています。woocommerceチェックアウトの請求先フィールドをあらかじめ入力してください

とクライアントが望むが、私たちは、ユーザーが自分の名前、住所、電話、電子メールを入力するワードプレスでの注文ページを持っているこの

  1. ようにするためのプロセスの価格を選択した後、直接チェックアウトにリダイレクト。
  2. チェックアウトページでは、billing_name、billing_addressなどのフィールドに注文ページのデータが事前に入力されているようにします。

したがって、どのようにデータをチェックアウトに渡すことができますか?

また、渡されたデータを入力する前に、これらのフィールドをクリアする方法はありますか?

答えて

0

ビルドしているサイトで同じ問題が発生しました。アンケートではメールアドレスを収集しています。ユーザーがチェックアウトに進むと、メールフィールドが事前に入力された状態になります。調査票は、次のように提出されたとき、私はWooCommerceセッションでの電子メールアドレスを格納しています:

$woocommerce->session->set('survey_email', $_POST['survey_email']); 

その後、私はフォームフィールドを埋めるためにwoocommerce_checkout_fieldsフィルタ(see docs)に引っ掛けています。フィールドの値を直接設定することはできませんが、ユーザーがログインした場合に上書きされるメリットがあります。

function override_checkout_email_field($fields) { 
    global $woocommerce; 
    $survey_email = $woocommerce->session->get('survey_email'); 
    if(!is_null($survey_email)) { 
     $fields['billing']['billing_email']['default'] = $survey_email; 
    } 
    return $fields; 
} 

add_filter('woocommerce_checkout_fields' , 'override_checkout_email_field'); 
関連する問題