【WooCommerce】ダウンロード商品購入時はメールアドレスのみ/住所不要にする方法

スポンサーリンク

Woocommerceを使うと、ダウンロード商品の販売が可能になります。

ただ、配送する必要のないダウンロード商品であっても、情報購入時にはデフォルトで住所を入力させる仕様になっています。

ダウンロード商品を購入したいだけなので、住所は不要なはずですから、カスタマイズが必要です。

バーチャルまたはダウンロード商品購入時には住所を入力不要にし、配送が必要な商品購入時には住所・氏名など必要な情報が必須入力となるようWooCommerceの設定を変更できます。

スポンサーリンク

1.事前準備

注意点としては、wordpressのfunctions.phpの末尾にコードを追加しますので、最悪の場合ブログが真っ白になる等の問題が起きる可能性があります。

問題が起きた時にはFTPやSSHからサーバにアクセスして、functions.phpの設定を元に戻せるよう下準備を済ませておくことをおススメします。

スポンサーリンク

2.追加するコード

これを追加します。

/* バーチャルもしくはダウンロードはメルアドだけ必須に */

add_filter( ‘woocommerce_checkout_fields’ , ‘bbloomer_simplify_checkout_virtual’ );

function bbloomer_simplify_checkout_virtual( $fields ) {

$only_virtual = true;

foreach( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
// Check if there are non-virtual products
if ( ! $cart_item[‘data’]->is_virtual() ) $only_virtual = false;
}

if( $only_virtual ) {
unset($fields[‘billing’][‘billing_company’]);
unset($fields[‘billing’][‘billing_first_name’] );
unset($fields[‘billing’][‘billing_last_name’]);
unset($fields[‘billing’][‘billing_address_1’]);
unset($fields[‘billing’][‘billing_address_2’]);
unset($fields[‘billing’][‘billing_city’]);
unset($fields[‘billing’][‘billing_postcode’]);
unset($fields[‘billing’][‘billing_country’]);
unset($fields[‘billing’][‘billing_state’]);
unset($fields[‘billing’][‘billing_phone’]);
add_filter( ‘woocommerce_enable_order_notes_field’, ‘__return_false’ );
}

return $fields;
}

/* end バーチャルもしくはダウンロードはメルアドだけ必須に */

スポンサーリンク

3.確認

うまくいけば、下記の通り買い物に配送が必要なものがある場合と、ダウンロード商品のみの場合で必須入力項目が変わってくれるはずです。

買い物かごにバーチャル・ダウンロード商品のみがある場合

cybersecure.tokyo

買い物かごに配送が必要な商品が含まれている場合

cybersecure.tokyo

以上、WooCommerceでバーチャル・ダウンロード商品購入時に不要な情報入力を取り除きたいときの設定方法でした。

TIPS

氏名の入力を無効化すると、Wordpressの仕様上、ユーザ名を設定させる必要性があるため、自動でユーザ名の入力項目が表示されるようになります。

最後までお読みいただきありがとうございます。

スポンサーリンク
WordPress
スポンサーリンク
WEBBIZ

コメント

スポンサーリンク