Informação

Como ocultar Remover campos de checkout para produtos virtuais sem plug-ins

No painel do WordPress, vá para Aparência ➡ Editor de arquivo de tema e copie o código a seguir no arquivo functions.php do tema e atualize-o.

Você deve criar um tema filho antes de fazer qualquer alteração no arquivo functions.php . Caso contrário, as alterações aplicadas serão perdidas após cada atualização.
Crie um tema filho no WordPress passo a passo [sem plugin]

Como método alternativo, você pode usar o plugin Code Snip pets para inserir seus códigos no WordPress.

/**
 * Remove Checkout Fields for Virtual products in WooCommerce
 * @WPCookie
 */
 
add_filter( 'woocommerce_checkout_fields', 'simplify_checkout_virtual' );
  
function 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_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;
}

cópia de

Ao inserir o código acima no site na compra de produtos visuais, todos os campos relacionados ao endereço ficarão ocultos na página de checkout.
Exclua todos os campos necessários do código acima para adicioná-los de volta à página de checkout. Por exemplo, para adicionar o campo telefone, exclua a seguinte linha do código acima.

      unset($fields['billing']['billing_phone']);



											

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *