Create New Item
×
Item Type
File
Folder
Item Name
×
Search file in folder and subfolders...
File Manager
/
wp-content
/
plugins
/
wpbf-premium
/
inc
/
integration
/
woocommerce
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php defined('ABSPATH') || die("Can't access directly"); function wpbf_woo_remove_settings_post_type($post_types) { unset($post_types['product']); return $post_types; } add_filter('wpbf_blog_layouts_archive_array', 'wpbf_woo_remove_settings_post_type'); function wpbf_woo_custom_section_hooks($hooks) { $custom_hooks = array('WooCommerce Shop Page' => array('woocommerce_before_main_content', 'woocommerce_archive_description', 'woocommerce_before_shop_loop', 'woocommerce_before_shop_loop_item', 'woocommerce_before_shop_loop_item_title', 'woocommerce_shop_loop_item_title', 'woocommerce_after_shop_loop_item_title', 'woocommerce_after_shop_loop_item', 'woocommerce_after_shop_loop', 'woocommerce_after_main_content'), 'WooCommerce Product Page' => array('woocommerce_before_single_product', 'woocommerce_before_single_product_summary', 'woocommerce_product_thumbnails', 'woocommerce_single_product_summary', 'woocommerce_before_add_to_cart_form', 'woocommerce_before_variations_form', 'woocommerce_before_add_to_cart_button', 'woocommerce_before_single_variation', 'woocommerce_single_variation', 'woocommerce_after_single_variation', 'woocommerce_after_add_to_cart_button', 'woocommerce_after_variations_form', 'woocommerce_after_add_to_cart_form', 'woocommerce_product_meta_start', 'woocommerce_product_meta_end', 'woocommerce_share', 'woocommerce_after_single_product_summary', 'woocommerce_after_single_product'), 'WooCommerce Cart Page' => array('woocommerce_before_cart', 'woocommerce_before_cart_table', 'woocommerce_before_cart_contents', 'woocommerce_cart_contents', 'woocommerce_cart_coupon', 'woocommerce_after_cart_contents', 'woocommerce_after_cart_table', 'woocommerce_cart_collaterals', 'woocommerce_before_cart_totals', 'woocommerce_cart_totals_before_shipping', 'woocommerce_before_shipping_calculator', 'woocommerce_after_shipping_calculator', 'woocommerce_cart_totals_after_shipping', 'woocommerce_cart_totals_before_order_total', 'woocommerce_cart_totals_after_order_total', 'woocommerce_proceed_to_checkout', 'woocommerce_after_cart_totals', 'woocommerce_after_cart'), 'WooCommerce Checkout Page' => array('woocommerce_before_checkout_form', 'woocommerce_checkout_before_customer_details', 'woocommerce_before_checkout_billing_form', 'woocommerce_after_checkout_billing_form', 'woocommerce_before_checkout_shipping_form', 'woocommerce_after_checkout_shipping_form', 'woocommerce_before_order_notes', 'woocommerce_after_order_notes', 'woocommerce_checkout_after_customer_details', 'woocommerce_checkout_before_order_review', 'woocommerce_review_order_before_cart_contents', 'woocommerce_review_order_after_cart_contents', 'woocommerce_review_order_before_shipping', 'woocommerce_review_order_after_shipping', 'woocommerce_review_order_before_order_total', 'woocommerce_review_order_after_order_total', 'woocommerce_review_order_before_payment', 'woocommerce_review_order_before_submit', 'woocommerce_review_order_after_submit', 'woocommerce_review_order_after_payment', 'woocommerce_checkout_after_order_review', 'woocommerce_after_checkout_form'), 'WooCommerce Login/Register Form' => array('woocommerce_before_customer_login_form', 'woocommerce_login_form_start', 'woocommerce_login_form', 'woocommerce_login_form_end', 'woocommerce_register_form_start', 'woocommerce_register_form', 'woocommerce_register_form_end', 'woocommerce_after_customer_login_form'), 'WooCommerce Account Page' => array('woocommerce_before_account_navigation', 'woocommerce_account_navigation', 'woocommerce_after_account_navigation', 'woocommerce_account_content', 'woocommerce_account_dashboard', 'woocommerce_before_account_orders', 'woocommerce_before_account_orders_pagination', 'woocommerce_after_account_orders', 'woocommerce_before_account_downloads', 'woocommerce_before_available_downloads', 'woocommerce_after_available_downloads', 'woocommerce_after_account_downloads', 'woocommerce_before_edit_account_address_form', 'woocommerce_after_edit_account_address_form', 'woocommerce_before_account_payment_methods', 'woocommerce_after_account_payment_methods', 'woocommerce_before_edit_account_form', 'woocommerce_edit_account_form_start', 'woocommerce_edit_account_form', 'woocommerce_edit_account_form_end', 'woocommerce_after_edit_account_form'), 'WooCommerce Quick View Modal' => array('wpbf_woo_quick_view_before_gallery', 'wpbf_woo_quick_view_after_gallery', 'wpbf_woo_quick_view_before_title', 'wpbf_woo_quick_view_after_title', 'wpbf_woo_quick_view_before_rating', 'wpbf_woo_quick_view_after_rating', 'wpbf_woo_quick_view_before_price', 'wpbf_woo_quick_view_after_price', 'wpbf_woo_quick_view_before_excerpt', 'wpbf_woo_quick_view_after_excerpt', 'wpbf_woo_quick_view_before_add_to_cart', 'wpbf_woo_quick_view_after_add_to_cart', 'wpbf_woo_quick_view_before_meta', 'wpbf_woo_quick_view_after_meta'), 'WooCommerce Off Canvas Sidebar' => array('wpbf_woo_off_canvas_sidebar_open', 'wpbf_woo_off_canvas_sidebar_close')); $hooks = array_merge($hooks, $custom_hooks); return $hooks; } add_filter('wpbf_custom_section_hooks', 'wpbf_woo_custom_section_hooks'); function wpbf_woo_loop_image_flip_post_class($classes) { if ('disabled' === get_theme_mod('woocommerce_loop_image_flip')) { return $classes; } if ('product' == get_post_type()) { global $product; $attachment_ids = $product->get_gallery_image_ids(); if ($attachment_ids) { $classes[] = 'wpbf-woo-has-gallery'; } } return $classes; } add_filter('post_class', 'wpbf_woo_loop_image_flip_post_class', 30); function wpbf_woo_loop_image_flip_construct() { if ('disabled' === get_theme_mod('woocommerce_loop_image_flip')) { return; } global $product; $attachment_ids = $product->get_gallery_image_ids(); if ($attachment_ids) { $attachment_ids = array_values($attachment_ids); $secondary_image_id = $attachment_ids['0']; $secondary_image_alt = get_post_meta($secondary_image_id, '_wp_attachment_image_alt', true); $secondary_image_title = get_the_title($secondary_image_id); echo wp_get_attachment_image($secondary_image_id, 'shop_catalog', '', array('class' => 'attachment-woocommerce_thumbnail wp-post-image wp-post-image-secondary', 'alt' => $secondary_image_alt, 'title' => $secondary_image_title)); } } add_action('woocommerce_before_shop_loop_item_title', 'wpbf_woo_loop_image_flip_construct', 11); function wpbf_woo_menu_item_class_children($css_classes) { if (WC()->cart->get_cart() && 'hide' !== get_theme_mod('woocommerce_menu_item_dropdown')) { $css_classes .= ' menu-item-has-children'; if (get_theme_mod('woocommerce_menu_item_dropdown_popup')) { $css_classes .= ' wpbf-woo-menu-item-popup'; } } return $css_classes; } add_filter('wpbf_woo_menu_item_classes', 'wpbf_woo_menu_item_class_children'); function wpbf_woo_menu_item_premium() { $label = apply_filters('wpbf_woo_menu_item_label', __('Cart', 'wpbfpremium')); $cart_total = WC()->cart->get_cart_total(); $separator = apply_filters('wpbf_woo_menu_item_separator', __('-', 'wpbfpremium')); $menu_item = ''; if ('hide' !== get_theme_mod('woocommerce_menu_item_label')) { $menu_item .= '<span class="wpbf-woo-menu-item-label">' . esc_html($label) . '</span>'; } if ('hide' !== get_theme_mod('woocommerce_menu_item_amount')) { $menu_item .= '<span class="wpbf-woo-menu-item-total">' . wp_kses_data($cart_total) . '</span>'; } if ('hide' !== get_theme_mod('woocommerce_menu_item_amount')) { $menu_item .= '<span class="wpbf-woo-menu-item-separator">' . esc_html($separator) . '</span>'; } return $menu_item; } add_filter('wpbf_woo_before_menu_item', 'wpbf_woo_menu_item_premium'); function wpbf_woo_do_menu_item_dropdown() { $label = apply_filters('wpbf_woo_menu_item_label', __('Cart', 'wpbfpremium')); $cart_items = WC()->cart->get_cart(); $cart_url = wc_get_cart_url(); $checkout_url = wc_get_checkout_url(); $cart_button = get_theme_mod('woocommerce_menu_item_dropdown_cart_button'); $checkout_button = get_theme_mod('woocommerce_menu_item_dropdown_checkout_button'); $menu_item = ''; if ($cart_items && 'hide' !== get_theme_mod('woocommerce_menu_item_dropdown')) { $menu_item .= '<ul class="wpbf-woo-sub-menu">'; $menu_item .= '<li>'; $menu_item .= '<div class="wpbf-woo-sub-menu-table-wrap">'; $menu_item .= '<table class="wpbf-table">'; $menu_item .= '<thead>'; $menu_item .= '<tr>'; $menu_item .= '<th>' . __('Product/s', 'wpbfpremium') . '</th>'; $menu_item .= '<th>' . __('Quantity', 'wpbfpremium') . '</th>'; $menu_item .= '</tr>'; $menu_item .= '</thead>'; $menu_item .= '<tbody>'; foreach ($cart_items as $cart_item => $values) { $product = wc_get_product($values['data']->get_id()); $item_name = $product->get_name(); $quantity = $values['quantity']; $image = $product->get_image(); $link = $product->get_permalink(); $menu_item .= '<tr>'; $menu_item .= '<td>'; $menu_item .= '<div class="wpbf-woo-sub-menu-product-wrap">'; $menu_item .= sprintf('<a href="%s" class="wpbf-woo-sub-menu-remove" data-product_id="%s" data-cart_item_key="%s" data-product_sku="%s">×</a>', esc_url(wc_get_cart_remove_url($cart_item)), esc_attr($product->get_id()), esc_attr($cart_item), esc_attr($product->get_sku())); if ($image) { $menu_item .= '<a class="wpbf-woo-sub-menu-image-wrap" href="' . esc_url($link) . '">'; $menu_item .= $image; $menu_item .= '</a>'; } $menu_item .= '<a class="wpbf-woo-sub-menu-title-wrap" href="' . esc_url($link) . '">'; $menu_item .= $item_name; $menu_item .= '</a>'; $menu_item .= '</div>'; $menu_item .= '</td>'; $menu_item .= '<td>'; $menu_item .= $quantity; $menu_item .= '</td>'; $menu_item .= '</tr>'; } $menu_item .= '</tbody>'; $menu_item .= '</table>'; $menu_item .= '</div>'; $menu_item .= '<div class="wpbf-woo-sub-menu-summary-wrap">'; $menu_item .= '<div>' . __('Subtotal', 'wpbfpremium') . '</div>'; $menu_item .= '<div>' . WC()->cart->get_cart_subtotal() . '</div>'; $menu_item .= '</div>'; if ('hide' !== $cart_button || 'hide' !== $checkout_button) { $menu_item .= '<div class="wpbf-woo-sub-menu-button-wrap">'; if ('hide' !== $cart_button) { $menu_item .= '<a href="' . esc_url($cart_url) . '" class="wpbf-button">' . esc_html($label) . '</a>'; } if ('hide' !== $checkout_button) { $menu_item .= '<a href="' . esc_url($checkout_url) . '" class="wpbf-button wpbf-button-primary">' . __('Checkout', 'wpbfpremium') . '</a>'; } $menu_item .= '</div>'; } $menu_item .= '</li>'; $menu_item .= '</ul>'; } return $menu_item; } add_filter('wpbf_woo_menu_item_dropdown', 'wpbf_woo_do_menu_item_dropdown'); function wpbf_woo_menu_item_dropdown_popup_overlay() { if (get_theme_mod('woocommerce_menu_item_dropdown_popup')) { echo '<div class="wpbf-woo-menu-item-popup-overlay"></div>'; } } add_action('wpbf_body_close', 'wpbf_woo_menu_item_dropdown_popup_overlay'); function wpbf_woo_off_canvas_sidebar() { if ('enabled' !== get_theme_mod('woocommerce_loop_off_canvas_sidebar')) { return; } echo '<div class="wpbf-woo-off-canvas-sidebar">'; echo '<i class="wpbf-close wpbff wpbff-times" aria-hidden="true"></i>'; do_action('wpbf_woo_off_canvas_sidebar_open'); if (!dynamic_sidebar('wpbf-woocommerce-off-canvas-sidebar')) { if (current_user_can('edit_theme_options')) { ?> <div class="widget no-widgets"> <?php _e('Your Off Canvas Sidebar Widgets will appear here.', 'wpbfpremium'); ?><br> <?php if (is_customize_preview()) { ?> <a href="javascript:void(0)" onclick="parent.wp.customize.panel( 'widgets' ).focus()"><?php _e('Add Widgets', 'wpbfpremium'); ?></a> <?php } else { ?> <a href='<?php echo esc_url(admin_url('widgets.php')); ?>'><?php _e('Add Widgets', 'wpbfpremium'); ?></a> <?php } ?> </div> <?php } } do_action('wpbf_woo_off_canvas_sidebar_close'); echo '</div>'; echo '<div class="wpbf-woo-off-canvas-sidebar-overlay"></div>'; echo '<button class="wpbf-woo-off-canvas-sidebar-button" aria-hidden="true">'; echo apply_filters('wpbf_woo_off_canvas_sidebar_icon', '<i class="wpbff wpbff-search"></i>'); echo ' '; echo apply_filters('wpbf_woo_off_canvas_sidebar_label', __('Filter', 'wpbfpremium')); echo '</button>'; } add_action('woocommerce_before_shop_loop', 'wpbf_woo_off_canvas_sidebar', 10); function wpbf_woo_off_canvas_sidebar_widget_area() { if ('enabled' !== get_theme_mod('woocommerce_loop_off_canvas_sidebar')) { return; } register_sidebar(array('id' => 'wpbf-woocommerce-off-canvas-sidebar', 'name' => __('WooCommerce Off Canvas Sidebar', 'wpbfpremium'), 'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget' => '</div>', 'before_title' => '<h4 class="wpbf-widgettitle">', 'after_title' => '</h4>', 'description' => __('This Off Canvas Sidebar is being displayed on WooCommerce Archive Pages.', 'wpbfpremium'))); } add_action('widgets_init', 'wpbf_woo_off_canvas_sidebar_widget_area'); function wpbf_woo_off_canvas_sidebar_icon($icon) { if ('hamburger' === get_theme_mod('woocommerce_loop_off_canvas_sidebar_icon')) { $icon = '<i class="wpbff wpbff-hamburger"></i>'; } return $icon; } add_filter('wpbf_woo_off_canvas_sidebar_icon', 'wpbf_woo_off_canvas_sidebar_icon'); function wpbf_woo_off_canvas_sidebar_label($label) { $newlabel = get_theme_mod('woocommerce_loop_off_canvas_sidebar_label'); if ($newlabel) { $label = esc_html($newlabel); } return $label; } add_filter('wpbf_woo_off_canvas_sidebar_label', 'wpbf_woo_off_canvas_sidebar_label'); function wpbf_woo_distraction_free_checkout() { if (!is_checkout()) { return; } if (!get_theme_mod('woocommerce_distraction_free_checkout')) { return; } remove_action('wpbf_header', 'wpbf_do_header'); add_action('wpbf_header', 'wpbf_woo_do_distraction_free_checkout'); } add_action('wp', 'wpbf_woo_distraction_free_checkout'); function wpbf_woo_do_distraction_free_checkout() { ?> <header id="header" class="wpbf-page-header" itemscope="itemscope" itemtype="https://schema.org/WPHeader"> <?php do_action('wpbf_header_open'); ?> <div class="wpbf-navigation wpbf-distraction-free"> <div class="wpbf-container wpbf-container-center wpbf-visible-large wpbf-nav-wrapper"> <?php get_template_part('inc/template-parts/logo/logo'); ?> </div> <div class="wpbf-container wpbf-mobile-menu-hamburger wpbf-hidden-large wpbf-mobile-nav-wrapper"> <?php get_template_part('inc/template-parts/logo/logo-mobile'); ?> </div> </div> <?php do_action('wpbf_header_close'); ?> </header> <?php } function wpbf_woo_menu_item_label($label) { $new_label = get_theme_mod('woocommerce_menu_item_custom_label'); if ($new_label && 'Cart' !== $new_label) { $label = $new_label; } return $label; } add_filter('wpbf_woo_menu_item_label', 'wpbf_woo_menu_item_label');