WooCommerce,在产品添加到购物车并在标题中更新购物车数量后显示一些消息

时间:2017-12-05 11:42:29

标签: php ajax wordpress woocommerce

我已经尝试了第二天这个,但我得到的只是这两个中的一个 - 它都没有显示我和#34;查看购物车"消息(我不知道在哪里/如何编辑)但仅在下一页刷新时更新购物车数量,或者在将商品添加到购物车后刷新购物车数量,但不显示任何消息。

要在content-product.php中显示没有购物车数量更新的消息,我使用了以下代码:

<div class="prod-item-add-to-cart">
    <?php

        echo apply_filters( 'woocommerce_loop_add_to_cart_link',
        sprintf( '<a rel="nofollow" href="%s" data-quantity="%s" data-product_id="%s" data-product_sku="%s" class="%s">%s</a>',
                esc_url( $product->add_to_cart_url() ),
                esc_attr( isset( $quantity ) ? $quantity : 1 ),
                esc_attr( $product->get_id() ),
                esc_attr( $product->get_sku() ),
                esc_attr( isset( $class ) ? $class : 'button' ),
                esc_html( $product->add_to_cart_text() )
            ),
        $product );

        ?>
    </div>

在标题中我有这个:

<?php echo sprintf ( WC()->cart->get_cart_contents_count() ); ?> <?php _e('pcs.', 'eg'); ?> / ~ <?php echo WC()->cart->get_cart_total(); ?>

要更新标题中的数量,但在这种情况下添加的购物车消息不显示,我在content-product.php中使用了此代码:

<div class="prod-item-add-to-cart">
    <?php do_action('woocommerce_after_shop_loop_item'); ?>
</div>

我需要让两个选项都有效 - 在将商品添加到购物车后显示一些成功消息,并在不更新的情况下更新购物车数量。

1 个答案:

答案 0 :(得分:0)

将产品添加到购物车后,请检查以下代码以获取消息。

    /**
      * Custom Add To Cart Messages
      * Add this to your theme functions.php file
    **/
   add_filter( 'woocommerce_add_to_cart_message', 
          'custom_add_to_cart_message' );
    function custom_add_to_cart_message() {
global $woocommerce;
    // Output success messages
    if (get_option('woocommerce_cart_redirect_after_add')=='yes') :
        $return_to  = get_permalink(woocommerce_get_page_id('shop'));
        $message    = sprintf('<a href="%s" class="button">%s</a> %s', 
        $return_to, __('Continue Shopping &rarr;', 'woocommerce'), __('Product successfully added to your cart.', 'woocommerce') );
     else :
        $message    = sprintf('<a href="%s" class="button">%s</a> %s', 
          get_permalink(woocommerce_get_page_id('cart')), __('View 
          Cart &rarr;', 'woocommerce'), __('Product successfully added 
          to your cart.', 'woocommerce') );
     endif;

    return $message;
 }

希望这有助于你