is_purchasable() && $product->is_in_stock() ) || $product->is_type( 'external' ) ) ) { $defaults = [ 'quantity' => 1, 'class' => implode( ' ', array_filter( [ 'button', 'product_type_' . $product->get_type(), $product->is_purchasable() && $product->is_in_stock() ? 'add_to_cart_button' : '', $product->supports( 'ajax_add_to_cart' ) ? 'ajax_add_to_cart' : '', ] ) ), ]; $args = apply_filters( 'woocommerce_loop_add_to_cart_args', wp_parse_args( $args, $defaults ), $product ); wc_get_template( 'loop/add-to-cart.php', $args ); } } /** * Adds the linebreak where needed. * * @access public */ public function rollover_buttons_linebreak() { global $product, $fusion_settings; ?> is_purchasable() && $product->is_in_stock() ) || $product->is_type( 'external' ) ) ) : ?> get( 'woocommerce_product_box_design' ) ) ? '/' : ''; ?> is_purchasable() || ! $product->is_in_stock() ) && ! $product->is_type( 'external' ) ) { $styles = 'float:none;max-width:none;text-align:center;'; } echo '' . esc_attr__( 'Details', 'fusion-builder' ) . ''; } /** * Enqueue scripts for woocommerce. * * @access public */ public function woocommerce_scripts() { wp_enqueue_script( 'fusion_builder_woocommerce_js', FUSION_BUILDER_PLUGIN_URL . 'inc/woocommerce/js/woocommerce.js', [], FUSION_BUILDER_VERSION, true ); $dynamic_css_obj = Fusion_Dynamic_CSS::get_instance(); $mode = ( method_exists( $dynamic_css_obj, 'get_mode' ) ) ? $dynamic_css_obj->get_mode() : $dynamic_css_obj->mode; if ( 'file' !== $mode ) { wp_enqueue_style( 'fusion-builder-woocommerce', FUSION_BUILDER_PLUGIN_URL . 'inc/woocommerce/css/woocommerce.min.css', [], FUSION_BUILDER_VERSION ); } } /** * Add scripts to dynamic-css if using a file compiler. * * @access public * @since 5.1.5 * @param string $original_styles The dynamic-css styles. * @return string The dynamic-css styles with additional stylesheets appended if necessary. */ public function woocommerce_styles_dynamic_css( $original_styles ) { $dynamic_css_obj = Fusion_Dynamic_CSS::get_instance(); $mode = ( method_exists( $dynamic_css_obj, 'get_mode' ) ) ? $dynamic_css_obj->get_mode() : $dynamic_css_obj->mode; $styles = ''; if ( 'file' === $mode ) { // Stylesheet ID: fusion-builder-woocommerce. $styles .= fusion_file_get_contents( FUSION_BUILDER_PLUGIN_DIR . 'inc/woocommerce/css/woocommerce.min.css' ); // phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged } return $styles . $original_styles; } } new FusionBuilder_Woocommerce(); } /* Omit closing PHP tag to avoid "Headers already sent" issues. */