在更改购物车项目计数时,使用divi的标题中的微型购物车不会更新:

时间:2018-01-31 作者:devgeek

我有一个使用Divi主题的wordpress网站。当我更新购物车中的商品数量时,标题上的迷你购物车没有相应地更新。然而,在重新加载页面时,迷你购物车中的项目数量会得到更新。

Divi正在使用以下函数更新购物车,

if ( ! function_exists( \'et_show_cart_total\' ) ) { 
       function et_show_cart_total( $args = array() ) { 
               if ( ! class_exists( \'woocommerce\' ) || ! WC()->cart ) { 
                       return; 
               } 

               $defaults = array( 
                       \'no_text\' => false, 
               ); 

               $args = wp_parse_args( $args, $defaults ); 

               $items_number = WC()->cart->get_cart_contents_count(); 

               $url = function_exists( \'wc_get_cart_url\' ) ? wc_get_cart_url() : WC()->cart->get_cart_url(); 

               printf( 
                       \'<a href="%1$s" class="et-cart-info"> 
                               <span>%2$s</span> 
                       </a>\', 
                       esc_url( $url ), 
                       ( ! $args[\'no_text\'] 
                               ? esc_html( sprintf( 
                                       _nx( \'%1$s Item\', \'%1$s Items\', $items_number, \'WooCommerce items number\', \'Divi\' ), 
                                       number_format_i18n( $items_number ) 
                               ) ) 
                               : \'\' 
                       ) 
               ); 
       } 
}
如何通过ajax调用更新购物车中的商品数量来更新迷你购物车?

请问有人能帮忙吗?

1 个回复
最合适的回答,由SO网友:devgeek 整理而成

我通过在函数中添加以下内容修复了此问题。php:

add_filter( \'woocommerce_add_to_cart_fragments\', \'your_custom_functions\', 10, 1 ); 

function your_custom_functions( $fragments ) {
    $fragments[\'.your_cart_class\'] = \'\' . WC()->cart->get_cart_contents_count() . \' Items\';
    return $fragments; 
}

结束

相关推荐

JQuery&AJAX在WordPress中获取数据到php

我在wordpress中创建了一个自定义表,用于管理每个用户的词汇表列表。此列表在浏览器中显示为表格。我添加了一个按钮,以便用户可以从列表中删除词汇。为此,我使用jquery脚本。我检索用户id和所选词汇表的id,通过ajax将其传递给我的函数。此函数必须删除存储在数据库中的数据。在我看来,我的变量被很好地传递到函数中,但它不起作用。谁能解释一下我的错误是什么吗?以及如何检查变量是否传递良好。这里是我在“词汇表.js”中的代码 jQuery(\'#button\').click( function