Como desativar fragmentos do carrinho WooCommerce AJAX

Aprenda como desativar os fragmentos do carrinho Woocommerce AJAX e, consequentemente, aumentar a velocidade da sua loja virtual.

Este post foi atualizado pela última vez há mais de 3 meses.

Desativar completamente todos os fragmentos do carrinho Woocommerce AJAX pode ser, em vários casos, essencial para melhorar substancialmente a velocidade de carregamento da sua loja virtual que sofre constantemente com a alta frequência de solicitações contínuas ao admin-ajax.php.

Para bom entendedor, essas solicitações podem aumentar o tempo de carregamento da página em até 15 segundos! Sim, isso mesmo que você leu… 15 segundos! Afetando negativamente a experiência do usuário e, consequentemente, a receita e conversão da sua loja virtual com Woocommerce.

Como desativar fragmentos do carrinho WooCommerce AJAX
Foto: Rodrigo Santos via Pexels.

Devido as solicitações AJAX wc-ajax=get_refreshed_fragments no seu site, que geralmente são armazenadas em cache, o tempo de carregamento da página aumenta consideravelmente. Por isso, nossa recomendação é desativar os fragmentos AJAX do carrinho Woocommerce.

O que são fragmentos de carrinho Woocommerce AJAX

Popularmente conhecidos como wc-ajax=get_refreshed_fragments, os fragmentos AJAX do carrinho Woocommerce são scripts que fazem uso do AJAX para coletar dados e informações que estão no carrinho de compras, sem a necessidade de recarregar a página.

Mesmo que essa função melhore a experiência do usuário, tende a reduzir muito a velocidade da sua loja virtual, pois consome recursos extras do servidor web, fazendo com que possa perder clientes, compras e conversões.

Por exemplo, fazer com que os fragmentos de carrinho sejam carregados em páginas estáticas ou de conteúdo, que não exigem informações do carrinho, podem diminuir significativamente a performance.

E vale lembrar que não basta apenas remover o botão de carrinho destas páginas, é importante desativar esses fragmentos.

Como desativar os fragmentos do carrinho Woocommerce AJAX

Existem várias maneiras práticas para desativar os fragmentos do carrinho, seja usando plugins ou adicionando um código diretamente no arquivo functions.php do seu template.

Desativar fragmentos AJAX de todas as páginas

/** Desativar a chamada Ajax do WooCommerce */
add_action( ‘wp_enqueue_scripts’, ‘cjnet_dequeue_woocommerce_cart_fragments’, 11);

/** Desativar a chamada Ajax do WooCommerce em todo o site */
add_action( 'wp_enqueue_scripts', 'cjnet_dequeue_woocommerce_cart_fragments', 11);
function cjnet_dequeue_woocommerce_cart_fragments() { wp_dequeue_script( 'wc-cart-fragments' ); return true; }Code language: PHP (php)

Desativar fragmentos AJAX na primeira página

/** Desativar a chamada Ajax na página inicial do WooCommerce */
add_action( 'wp_enqueue_scripts', 'cjnet_dequeue_woocommerce_cart_fragments', 11);
function cjnet_dequeue_woocommerce_cart_fragments() { if (is_front_page()) wp_dequeue_script('wc-cart-fragments'); }Code language: PHP (php)

Desativar fragmentos em todas as páginas, exceto nas páginas da loja

/** Desativar todos os estilos e scripts WooCommerce, exceto nas páginas da loja */

add_action( 'wp_enqueue_scripts', 'cjnet_dequeue_woocommerce_styles_scripts', 99 );
function cjnet_dequeue_woocommerce_styles_scripts() { if ( function_exists( 'is_woocommerce' ) ) { if ( ! is_woocommerce() && ! is_cart() && ! is_checkout() ) { # Styles wp_dequeue_style( 'woocommerce-general' ); wp_dequeue_style( 'woocommerce-layout' );
wp_dequeue_style( 'woocommerce-smallscreen' );
wp_dequeue_style( 'woocommerce_frontend_styles' );
wp_dequeue_style( 'woocommerce_fancybox_styles' );
wp_dequeue_style( 'woocommerce_chosen_styles' );
wp_dequeue_style( 'woocommerce_prettyPhoto_css' );

# SCRIPTS

wp_dequeue_script( 'wc_price_slider' );
wp_dequeue_script( 'wc-single-product' );
wp_dequeue_script( 'wc-add-to-cart' );
wp_dequeue_script( 'wc-cart-fragments' );
wp_dequeue_script( 'wc-checkout' );
wp_dequeue_script( 'wc-add-to-cart-variation' );
wp_dequeue_script( 'wc-single-product' );
wp_dequeue_script( 'wc-cart' );
wp_dequeue_script( 'wc-chosen' );
wp_dequeue_script( 'woocommerce' );
wp_dequeue_script( 'prettyPhoto' );
wp_dequeue_script( 'prettyPhoto-init' );
wp_dequeue_script( 'jquery-blockui' );
wp_dequeue_script( 'jquery-placeholder' );
wp_dequeue_script( 'fancybox' );
wp_dequeue_script( 'jqueryui' ); } }Code language: PHP (php)

Conclusão

Mesmo que o Woocommerce seja uma das melhores ferramentas disponíveis para gerenciamento de lojas virtuais, junto dele são carregados muitos scripts, e até mesmo folhas de estilos, que deixa o site mais lento.

Foi pensando na alta performance que ensinamos neste artigo como desativar os scripts relacionados com os fragmentos AJAX do Woocommerce em praticamente todas as páginas e postagens, exceto nas páginas interna do seu e-commerce, melhorando o tempo de carregamento num todo.

Fica a dica!

Quero ser cliente da PortoFácil! Entre em contato

Leia também

Textos que têm a ver com este assunto:
TUTORIAL: como resolver erros e problemas no WordPress

Tutorial de como resolver os principais erros e problemas relacionados ao WordPress. Confira nosso passo a passo detalhado de soluções!

Woocommerce Hooks: Melhores filtros e ações para sua loja virtual

Conheça os melhores hooks para turbinar seu Woocommerce, melhorando a navegabilidade dos seus visitantes dentro da sua loja virtual.

Como corrigir os erros mais comuns do Woocommerce

Aprenda como resolver e corrigir os principais erros do Woocommerce sem precisar de muito conhecimento técnico sobre códigos e WordPress.