Php WooCommerce,购物车页面– ;当购物车为空时隐藏元素

Php WooCommerce,购物车页面– ;当购物车为空时隐藏元素,php,if-statement,woocommerce,hide,cart,Php,If Statement,Woocommerce,Hide,Cart,我在WooCommerce购物车页面上放置了一些自定义元素。当产品在购物车中时,页面看起来很棒–但是当购物车为空时,我的自定义元素仍然存在,并干扰了空购物车的布局。这就是为什么我想在这种情况下隐藏这些自定义元素 我尝试将以下代码添加到我的子主题函数中: add_action( 'wp_footer', 'henju_empty_cart' ); function henju_empty_cart() { if ( WC()->cart->get_cart_contents_

我在WooCommerce购物车页面上放置了一些自定义元素。当产品在购物车中时,页面看起来很棒–但是当购物车为空时,我的自定义元素仍然存在,并干扰了空购物车的布局。这就是为什么我想在这种情况下隐藏这些自定义元素

我尝试将以下代码添加到我的子主题函数中:

add_action( 'wp_footer', 'henju_empty_cart' );
function henju_empty_cart() {

    if ( WC()->cart->get_cart_contents_count() == 0 ) {
            echo "<script>
            $('Have-Question-Textblock-Cart-0209').hide()
            </script>";
    }
}
add_action('wp_footer','henju_empty_cart');
函数henju\u empty\u cart(){
如果(WC()->cart->get\u cart\u contents\u count()==0){
回声“
$('Have-Question-Textblock-Cart-0209').hide()
";
}
}
或:

add_action('wp_head','henju2_empty_cart');
函数henju2_empty_cart(){
如果(是购物车()&&WC()->购物车->购物车内容\u计数==0){
回声“
$('Have-Question-Textblock-Cart-0209').css('display','none');
";
出口
}
}
但这并不奏效

基本上我想隐藏CSS类为“.have-Question-Textblock-Cart-0209”的自定义元素

有人知道怎么做吗


谢谢&最好

好的,我想我找到了一个解决方案,在没有手动重新加载页面的情况下也能正常工作:

add_filter( 'body_class','henju_empty_cart' );
function henju_empty_cart( $classes ) {
    global $woocommerce;
    if( is_cart() && WC()->cart->get_cart_contents_count() == 0 ) {
        $classes[] = 'Empty-Cart-0209';
    }

    return $classes;

}

add_action( 'wp_footer', 'henju_empty_cart_ajax' ); 

function henju_empty_cart_ajax() { 
   if ( is_cart()) {
      ?> 
      <script type="text/javascript"> 
         jQuery(function($) {
               if ($num_items == 0) { location.reload (true) };
         });
         exit();
      </script> 
      <?php 
   } 
}

好的,我想我找到了一个解决方案,在没有手动重新加载页面的情况下也能正常工作:

add_filter( 'body_class','henju_empty_cart' );
function henju_empty_cart( $classes ) {
    global $woocommerce;
    if( is_cart() && WC()->cart->get_cart_contents_count() == 0 ) {
        $classes[] = 'Empty-Cart-0209';
    }

    return $classes;

}

add_action( 'wp_footer', 'henju_empty_cart_ajax' ); 

function henju_empty_cart_ajax() { 
   if ( is_cart()) {
      ?> 
      <script type="text/javascript"> 
         jQuery(function($) {
               if ($num_items == 0) { location.reload (true) };
         });
         exit();
      </script> 
      <?php 
   } 
}

我想你的问题会在->上得到更多的答案,我想你的问题会在->上得到更多的答案,不幸的是,解决方案根本不起作用:-/所以仍然在寻找解决方案,即使用购物车页面的AJAX行为。不幸的是,解决方案根本不起作用:-/所以仍然在寻找解决方案,这就是使用购物车页面的AJAX行为。
.Empty-Cart-0209 .Have-Question-Textblock-Cart-0209 {
display:none;
}