/var/www/html/wp-content/plugins/woocommerce/includes/widgets/class-wc-widget-cart.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<?php
/**
 * Shopping Cart Widget.
 *
 * Displays shopping cart widget.
 *
 * @package WooCommerce\Widgets
 * @version 2.3.0
 */

defined'ABSPATH' ) || exit;

/**
 * Widget cart class.
 */
class WC_Widget_Cart extends WC_Widget {

    
/**
     * Constructor.
     */
    
public function __construct() {
        
$this->widget_cssclass    'woocommerce widget_shopping_cart';
        
$this->widget_description __'Display the customer shopping cart.''woocommerce' );
        
$this->widget_id          'woocommerce_widget_cart';
        
$this->widget_name        __'Cart''woocommerce' );
        
$this->settings           = array(
            
'title'         => array(
                
'type'  => 'text',
                
'std'   => __'Cart''woocommerce' ),
                
'label' => __'Title''woocommerce' ),
            ),
            
'hide_if_empty' => array(
                
'type'  => 'checkbox',
                
'std'   => 0,
                
'label' => __'Hide if cart is empty''woocommerce' ),
            ),
        );

        if ( 
is_customize_preview() ) {
            
wp_enqueue_script'wc-cart-fragments' );
        }

        
parent::__construct();
    }

    
/**
     * Output widget.
     *
     * @see WP_Widget
     *
     * @param array $args     Arguments.
     * @param array $instance Widget instance.
     */
    
public function widget$args$instance ) {
        if ( 
apply_filters'woocommerce_widget_cart_is_hidden'is_cart() || is_checkout() ) ) {
            return;
        }

        
wp_enqueue_script'wc-cart-fragments' );

        
$hide_if_empty = empty( $instance['hide_if_empty'] ) ? 1;

        if ( ! isset( 
$instance['title'] ) ) {
            
$instance['title'] = __'Cart''woocommerce' );
        }

        
$this->widget_start$args$instance );

        if ( 
$hide_if_empty ) {
            echo 
'<div class="hide_cart_widget_if_empty">';
        }

        
// Insert cart widget placeholder - code in woocommerce.js will update this on page load.
        
echo '<div class="widget_shopping_cart_content"></div>';

        if ( 
$hide_if_empty ) {
            echo 
'</div>';
        }

        
$this->widget_end$args );
    }
}