Home Forums Search Search Results for 'ADDITIONAL INFORMATION products page'

Viewing 30 results - 91 through 120 (of 155 total)
  • Author
    Search Results
  • ShakerMaker
    Participant
    #257750

    Hi Artem,

    We have four issues which we have been asking for help with for days and the same replies keep coming, which are not solving our issue:

    1) https://xtemos.com/forums/topic/3x-woodmart-qs-additional-info-size-guide-category-icons/
    Here we’re asking how to change the “Additional Information” label on the second tab on a product page – the one which shows the product attributes. We’ve been told to try the Loco Translate, this didn’t work and then we’ve been told to change a setting under Theme Settings, which isn’t there.

    2) https://xtemos.com/forums/topic/change-the-hot-label-on-products/
    The last reply – I refuse to believe there is no way of switching the “Hot” label to always appear above the “sale” attribute – I believe support just cannot be bothered to help on this one.

    3) https://xtemos.com/forums/topic/google-maps-error-4/
    Was told this error would be discussed with your dev team nearly three weeks back, but no reply since.

    4) https://xtemos.com/forums/topic/shop-sort-by-not-working-pricing-filter-help/
    The ‘Filter by Price’ slider – surely this can be used with another numerical attribute, as I’m using a Price Measurement plugin, so the “price” in the backend is not the actual “price” shown on the front end.

    Any actual help to these queries would be appreciated… every time I’ve asked support it has taken 4-5 questions to get an answer. I just need answers – not a drawn our conversions with Elise.

    Kind regards,
    Stewart

    Mandinga
    Participant
    #254576

    1) Ok, thanks!

    2) I have found an option in the attributes tab (Visible on the products page) Unchecking the box no longer shows the tab: additional information

    Attachments:
    You must be logged in to view attached files.
    #248318

    Hello,

    I can hide this information with custom CSS is it workable?

    .product p.wc-gzd-additional-info, 
    .product-quick-view p.wc-gzd-additional-info {
        display:none;
    }

    Or I can reduce the font size In any case the block on hover would overlap the products in the row below, you can consider using another hover design in the Theme Settings > Shop page > Product Style.

    Best Regards

    #248136

    Hello,

    Thank you very much for choosing our theme and for contacting us.

    1. Addition information (Shopping and Delivery) tab is edited in the Theme Settings > Product page > Tabs. If you mean Additional tab with the product attributes:

    You can translate/rewrite all theme and plugin texts via PO file in WordPress. Here is a video tutorial that should help you translate your website texts with a Loco Translate plugin https://www.youtube.com/watch?v=D3NsDdMzsls&list=PLMw6W4rAaOgKKv0oexGHzpWBg1imvrval&index=3

    Please check the video tutorial to see how to save the translation file correctly. You can remove the plugin and translations would remain. Also, translations would remain after each theme update.

    The same relates to # 2

    # 3 You need to open your SVG icons file with some editor like Sublime Text or default system text editor and add width=”31″ height=”40″ attributes to your <svg>tag like it is shown: http://prntscr.com/m4n0qw
    Then you will need to re-upload your icons in WordPress Dashboard.

    # 4 The product description content can be rebuilt with a page builder (WP bakery page builder or Elementor. You can add an extra content block to the page, here is the demo: https://woodmart.xtemos.com/shop/furniture/eames-lounge-chair/ and https://woodmart.xtemos.com/shop/furniture/ornare-auctor/ these blocks were built in Dashboard > HTML and the HTML block ID shortcode is added to the Extra content block: https://xtemos.com/docs/woodmart/product-page-options/#local_settings

    # 5 You can disable the reviews in the Woocommerce > Settings > Products.

    Best Regards

    sg5
    Participant
    #245116

    Hi support-team,

    I am almost done setting up my shop with the Woodmart-theme – it is so far really a great product, however, I am having some minor issues:

    1) Translation issue: I have already installed Loco and translated the theme. However, I can not find where I can change “register” on the my-account-page, when the user is logged-out (Register-Translation.png)

    2) Product-Grid with two-line title: I have enabled that the Products should show two-lines of the product title. Yet, then the items are not in one line. Is there a way to put all products into one line, regardless if they have 1-line title or 2-line title? Is there basically an option where I can set both to 2-lines (Product-Grid.png)

    3) Mobile-View-Issue: First of all, I know that your theme looks fine on mobile. However in order to make my shop EU-conform I had to install the Germanized-Plugin which adds additionally the shipping-cost and tax lines into the products. Yet, then this information totally overlays the product and it doesn’t look good at all. Did you maybe come across already that issue and do you maybe have a fix more me for that?

    Kindly regards!

    Attachments:
    You must be logged in to view attached files.
    #237342

    Hello,

    Thank you very much for choosing our theme and for contacting us.

    By default, Woocommerce does not provide the option to add the shipping information into the product page.

    If this information is common for all the products, you can insert it in the After /Before Add to cart button in the Theme Settings > Product page. https://xtemos.com/docs/woodmart/html-blocks-2/#before_after

    If it is individual for each product you can add such information by means of an additional tab or extra content block: https://xtemos.com/docs/woodmart/product-page-options/#local_settings

    Best Regards

    Mitrosha
    Participant
    #232819

    Ok…
    1. I have WCFM plugin and “About” tab on the vendor page. Screen: https://prnt.sc/uy7uk4
    2. I made a new additional tab on the products page. I used Woodmart to make it (Product page->Tabs). Screen: https://prnt.sc/uy7vji
    3. I put there a WCFM-shortcode to show information from “About” tab on the vendor’s page. Screen: https://prnt.sc/uy7x6v
    And it works well. Screen: https://prnt.sc/uy89xf

    After that I trying to use Woodmart HTML blocks inside WCFM “About” tab.
    1. I made new HTML block. Screen: https://prnt.sc/uy80mj
    2. I put HTML block shortcode inside WCFM “About” tab field. Screen: https://prnt.sc/uy829q
    And it works well on the WCFM “About” tab. Screen: https://prnt.sc/uy83ac
    BUT… it doesn’t work on the additional tab on the products page. Screen: https://prnt.sc/uy841j

    In reply to: edit product tab

    #195488

    Hello,

    Description – remove everything from the main description.

    Reviews are disabled in the Woocommerce > Settings > Product.

    Additional tab (with the attributes) enter each attribute in the product page and disable showing on the product page.

    Vendor information – disable the brands https://xtemos.com/docs/basel/faq-guides-2/how-to-setup-brands

    More products – it seems it is the additional tab in the product page, clean all the content.

    Best Regards

    In reply to: product creation

    #193317

    Hello,

    1) The swatches are form of product variations that are displayed on the product page in a different way of the default dropdowns. That you need to enable for each attribute item from Product >> Attributes.

    Screenshot for Clarification: https://ibb.co/q7TzYCz

    2) To set up countdown timer on the product you can read our detailed documentation in the following link:
    https://xtemos.com/docs/woodmart/faq-guides/display-countdown-timer-product/

    3) The tabs are controlled by woocommerce and the data is inserted according to the product information that you add. The only option in theme settings is to edit the Shipping & Delivery tab that is added as an additional tab. That you can access from Theme Settings >> Product Page >> Tabs.

    Screenshot for Clarification: https://ibb.co/k4xLqp2

    4) The review tab is also controlled by WooCommerce. You can enable/disable and made necessary settings that are provided under WooCommerce >> Settings >> Products.

    Screenshot for Clarification: https://ibb.co/Np8mr1w

    Best Regards.

    jaak69
    Participant
    #189340

    Hello,

    I’ve used woocommerce_after_shop_loop_item_title to add additional info after product price on category pages and this works OK. I’ve added information in the following way:

    • With ACF was created select box custom field. Select box option values are HTML Block shortcodes
    • WPML is set to copy it to all languages
    • For all select box values I’ve created corresponding HTML Block to keep things manageable for end users + WPML translations
    • WPML string translation is switching HTML Block shortcode according to languages
    • woocommerce_after_shop_loop_item_title hook function is reading custom field and do_shortcode is rendering it

    The problem with Ajax Products tabs:

    How it is possible to fix this?

    Because this site is production site this custom field HTML is hidden on front page through CSS (<div class=”transport-front”>).

    In reply to: Guides

    INKPT
    Participant
    #189106

    Hello

    it doesn’t work either. my products have to have weight, I have to add weight to the products. I’m going to contact a programmer to get this additional information bar where the weight appears …

    I have another problem to solve I can’t update the
    WPBakery Page Builder gives the following error:

    An error occurred while updating WPBakery Page Builder: To receive automatic updates license activation is required. Please visit Settings to activate your WPBakery Page Builder. Got WPBakery Page Builder in theme?

    WPBakery Page Builder is not included in woodmart?
    Do I have to buy a license to update it?

    greetings

    Uni-Crafterz
    Participant
    #186477

    Dear xtemos team,

    I’m facing the issue in single product page,

    When I’m click in additional information Tab it Redirects to -> you may like also products / similar products.

    500 internal server error :-
    When I’m login into my website as administrator, the 500 internal server error text appear’s

    This issue is only in Website dashboard.
    Rest all the pages are working fine.

    I’ve tried this also but not solved the problem -> https://www.wpbeginner.com/wp-tutorials/how-to-fix-the-internal-server-error-in-wordpress/

    I’ve attached a 2 short videos for better understanding.

    Videos link : https://we.tl/t-PkeQeHpU86

    Thanks
    Uni-Crafterz

    #185722

    Hello,

    Additional information in the product page can be added globally – the same for all the products and individually in each product.

    The global option is provided in the Theme Settings > Product page > Tabs > Additional information title and Additional information content. You can create HTML (WP Bakery page builder template), insert a row and divide it into as many columns as you need, and insert HTML ID into the content area.

    Enter any product page and you will find the option of an Additional tab, you can also insert HTML shortcode ID inside.

    Best Regards

    yogamat12
    Participant
    #173825

    What is the difference between main theme and child theme?

    Main issue – I am trying to remove the additional info tab from the product pages. I put in this css code on each product page as recommended from earlier posts. However, problem is that it also removes the long description, which I need.
    .product-tabs-wrapper {
    display: none;
    }

    Will this longer code solve above issue?
    If so, can you help me on where it goes? Not familiar or cant find functions.php
    add_filter( ‘woocommerce_product_tabs’, ‘woo_rename_tabs’, 98 );
    function woo_rename_tabs( $tabs ) {
    $tabs[‘description’][‘title’] = __( ‘Product Description’ ); // Rename the description tab
    return $tabs;
    }
    from link https://xtemos.com/forums/search/ADDITIONAL+INFORMATION+products+page/

    merishop
    Participant
    #169310

    1. How can I change “Related Products” text to “You May Also Like”?
    https://prnt.sc/qrht26

    2. I’m not planning to use long description or additional information. How can I remove the line shown in image.
    https://prnt.sc/qrhuc0

    3. Is it possible to show related products in a carousal?
    https://prnt.sc/qrhuzr

    4. How can I move short description below add to cart button and add a 1px border around it?
    https://prnt.sc/qrhvfs

    #168662

    Hello,

    1) You can change the “product-category” word from URL, you need to go to Settings >> Permalinks >> Product category base option, and replace the word.

    Screenshot for clarification: https://jmp.sh/3UGiop1

    2) When you set showing an attribute on the product page, WooCommerce generates an additional information tab and shows the attribute.

    In general the additional information tab only shown when you add attributes to the products. If you want to show the Additional information tab you have to add all those attributes from the product as in the screenshot: https://jmp.sh/2pFIr97

    Result: https://jmp.sh/AMlSqki

    To remove the additional information tab from your product page you can use the below custom code in your child theme funtion.php:

    add_filter( 'woocommerce_product_tabs', 'woo_remove_product_tabs', 98 );
    function woo_remove_product_tabs( $tabs ) {
        unset( $tabs['additional_information'] );  	// Remove the additional information tab
        return $tabs;
    }

    OR

    You can also remove it by disabling attributes added to products.

    This tab only display the information about the product attributes. You can not add other information inside this tab.

    Best Regards.

    wormholetattoo
    Participant
    #168653

    I want to know how to modify the url and additional content in the product page。

    1、After I built the website, I found out that my website URL is like this:
    https://wormholetattoosupply.com/product-category/tattoo-machines/tattoo-pens/,
    I want to remove product-category,Make my url like this:
    https://wormholetattoosupply.com/tattoo-machines/tattoo-pens/,
    Please tell me what should i do. thank you.

    2、I want to know how to modify the content here:https://wormholetattoosupply.com/wp-content/uploads/2020/01/Snipaste_2020-01-18_16-36-35.jpg ,The product I am exemplifying is here(https://wormholetattoosupply.com/products/aluminum-alloy-tattoo-pen-6-colors/).
    such as remove ADDITIONGAL INFORMATION, or modify it, or add other part to here?Where should I go to modify the content in the red box?

    Looking forward for your reply, thank you.

    Attachments:
    You must be logged in to view attached files.

    In reply to: Produkteigenschaften

    #166401

    Hello,

    Your question is not clear enough. If you mean product variations, please follow the instructions: A variable product is a product that has more than one option in attributes, for example, color, size, material. Instruction on how to create an attribute is here https://docs.woocommerce.com/document/managing-product-taxonomies/ as soon as the necessary attributes are available, a variable product can be created, instructions on how to create a variable product is here https://docs.woocommerce.com/document/variable-product/

    More information is here: https://xtemos.com/docs/woodmart/variable-products-swatches/

    If you mean the tabs, the first tab is the main description, and other additional inofrmation can be added as per instruction here: https://xtemos.com/docs/woodmart/product-page-options/

    Best Regards

    #165217

    Hello,

    An additional tab can be added globally: one for all the products (in the Theme Settings > Product page > Tabs > Additional tab and another tab can be added individually for each product on the product page. https://xtemos.com/docs/woodmart/options-for-pages/

    You can add two tabs max. If you need more tab you can check the below documentation for this purpose: https://docs.woocommerce.com/document/editing-product-data-tabs/

    The “About Brand” tab only display when you add brand attributes to some product. You can check the below documentation:
    https://xtemos.com/docs/woodmart/faq-guides/how-to-setup-brands/

    About the size guide if you want to make the same upper portion then simply edit your size guide with Wp-Bakery Page Builder from Dashboard >> Size Guides option and design your sidebar by creating two columns, in the very first column you have to use your image, and in the second column you have to use information box theme element with the help of Wp-Bakery Page builder.

    Also you can check the below documentation for more guidance:
    https://xtemos.com/docs/woodmart/faq-guides/create-size-guide-table/

    Best Regards.

    newsprince
    Participant
    #162826

    To XTEMOS Team and Artem Temos

    Based on the Feature Requests from @pacman1917

    I rewrote the Shop > Products Styles > Products grid with different sizes function
    creating the feature request pacman1917 wrote

    Please consider adding shop layout with mixed number of product per row, e.g. 3-4-3 and working with all product layouts. Like here – https://newnorth.fuelthemes.net/north-jewellery/shop/?shop_product_listing=style1

    This allow to do the alternating repeated pattern design in grid view

    3-2-3 for 3 column selected

    4-3-4 for 4 column selected

    5-4-5 for 5 column selected

    6-5-6 for 6 column selected

    I attach a screen recording bellow to see (on our demo environment)

    https://recordit.co/pMz87dsHfP

    Please review the code below and maybe implement it in a future release.

    Thank you.

    For anyone who wants to try it. Replace the code inside /wp-content/themes/woodmart/inc/integrations/woocommerce/functions.php
    with the one below

    <?php if ( ! defined( 'WOODMART_THEME_DIR' ) ) {
    	exit( 'No direct script access allowed' );
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Main loop
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_woocommerce_main_loop' ) ) {
    
    	add_action( 'woodmart_woocommerce_main_loop', 'woodmart_woocommerce_main_loop' );
    
    	function woodmart_woocommerce_main_loop( $fragments = false ) {
    		global $paged, $wp_query;
    
            $max_page = $wp_query->max_num_pages;
    
     		if ( $fragments ) ob_start();
    		
    		if ( $fragments && isset( $_GET['loop'] ) ) woodmart_set_loop_prop( 'woocommerce_loop', (int) sanitize_text_field( $_GET['loop'] ) );
    		
    		if ( woocommerce_product_loop() ) : ?>
    			
    			<?php if( ! $fragments ) woocommerce_product_loop_start(); ?>
    			
    			<?php if ( wc_get_loop_prop( 'total' ) || $fragments ): ?>
    				<?php while ( have_posts() ) : the_post(); ?>
    					
    					<?php
    					/**
    					 * Hook: woocommerce_shop_loop.
    					 *
    					 * @hooked WC_Structured_Data::generate_product_data() - 10
    					 */
    					do_action( 'woocommerce_shop_loop' );?>
    
    					<?php wc_get_template_part( 'content', 'product' ); ?>
    
    				<?php endwhile; // end of the loop. ?>
    			<?php endif; ?>
    			
    
    			<?php if( ! $fragments ) woocommerce_product_loop_end(); ?>
    
    			<?php
    				/**
    				 * woocommerce_after_shop_loop hook
    				 *
    				 * @hooked woocommerce_pagination - 10
    				 */
    				if( ! $fragments ) do_action( 'woocommerce_after_shop_loop' );
    			?>
    
    		<?php else: ?>
    			
    			<?php
    			/**
    			 * Hook: woocommerce_no_products_found.
    			 *
    			 * @hooked wc_no_products_found - 10
    			 */
    			do_action( 'woocommerce_no_products_found' ); ?>
    
    		<?php endif;
    
    		if ( $fragments ) $output = ob_get_clean();
    
    	    if( $fragments ) {
    	    	$output =  array(
    	    		'items' => $output,
    	    		'status' => ( $max_page > $paged ) ? 'have-posts' : 'no-more-posts',
    	    		'nextPage' => str_replace( '&', '&', next_posts( $max_page, false ) )
    	    	);
    
    	    	echo json_encode( $output );
    	    }
    	}
    }
    /**
     * ------------------------------------------------------------------------------------------------
     * Change number of products displayed per page
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_shop_products_per_page' ) ) {
    	function woodmart_shop_products_per_page() {
    		$per_page = 12;
    		$number = apply_filters('woodmart_shop_per_page', woodmart_get_products_per_page() );
    		if( is_numeric( $number ) ) {
    			$per_page = $number;
    		}
    		return $per_page;
    	}
    
    	add_filter( 'loop_shop_per_page', 'woodmart_shop_products_per_page', 20 );
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Set full width layouts for woocommerce pages on set up
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_woocommerce_install_actions' ) ) {
    	function woodmart_woocommerce_install_actions() {
    		if ( isset( $_GET['page'] ) && ! empty( $_GET['page'] ) && $_GET['page'] == 'wc-setup' && isset( $_GET['step'] ) && ! empty( $_GET['step'] ) && $_GET['step'] == 'next_steps') {
    			$pages = apply_filters( 'woocommerce_create_pages', array(
    				'cart' => array(
    					'name'    => _x( 'cart', 'Page slug', 'woodmart' ),
    					'title'   => _x( 'Cart', 'Page title', 'woodmart' ),
    					'content' => '[' . apply_filters( 'woocommerce_cart_shortcode_tag', 'woocommerce_cart' ) . ']'
    				),
    				'checkout' => array(
    					'name'    => _x( 'checkout', 'Page slug', 'woodmart' ),
    					'title'   => _x( 'Checkout', 'Page title', 'woodmart' ),
    					'content' => '[' . apply_filters( 'woocommerce_checkout_shortcode_tag', 'woocommerce_checkout' ) . ']'
    				),
    			) );
    
    			foreach ( $pages as $key => $page ) {
    				$option = 'woocommerce_' . $key . '_page_id';
    				$page_id = get_option( $option );
    				update_post_meta( $page_id, '_woodmart_main_layout', 'full-width' );
    			}
    
    			woodmart_woocommerce_image_dimensions();
    		}
    	}
    
    	add_action( 'admin_init', 'woodmart_woocommerce_install_actions', 1000);
    	add_action( 'admin_print_styles', 'woodmart_woocommerce_install_actions', 1000);
    }
    
    /**
     * Define image sizes
     */
    if( ! function_exists( 'woodmart_woocommerce_image_dimensions' ) ) {
    	function woodmart_woocommerce_image_dimensions() {
    		global $pagenow;
    	 
    		update_option( 'woocommerce_single_image_width', '1200' ); 		// Single product image
    		update_option( 'woocommerce_thumbnail_image_width', '600' ); 	// Gallery and catalog image
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Get base shop page link
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_shop_page_link' ) ) {
    	function woodmart_shop_page_link( $keep_query = false, $taxonomy = '' ) {
    		// Base Link decided by current page
    		if ( woodmart_is_shop_on_front() ) {
    			$link = home_url();
    		} elseif ( is_post_type_archive( 'product' ) || is_page( wc_get_page_id('shop') ) ) {
    			$link = get_post_type_archive_link( 'product' );
    		} elseif( is_product_category() ) {
    			$link = get_term_link( get_query_var('product_cat'), 'product_cat' );
    		} elseif( is_product_tag() ) {
    			$link = get_term_link( get_query_var('product_tag'), 'product_tag' );
    		} else {
    			$link = get_term_link( get_query_var('term'), get_query_var('taxonomy') );
    		}
    
    		if( $keep_query ) {
    
    			// Min/Max
    			if ( isset( $_GET['min_price'] ) ) {
    				$link = add_query_arg( 'min_price', wc_clean( $_GET['min_price'] ), $link );
    			}
    
    			if ( isset( $_GET['max_price'] ) ) {
    				$link = add_query_arg( 'max_price', wc_clean( $_GET['max_price'] ), $link );
    			}
    
    			// Orderby
    			if ( isset( $_GET['orderby'] ) ) {
    				$link = add_query_arg( 'orderby', wc_clean( $_GET['orderby'] ), $link );
    			}
    
    			/**
    			 * Search Arg.
    			 * To support quote characters, first they are decoded from &quot; entities, then URL encoded.
    			 */
    			if ( get_search_query() ) {
    				$link = add_query_arg( 's', rawurlencode( wp_specialchars_decode( get_search_query() ) ), $link );
    			}
    
    			// Post Type Arg
    			if ( isset( $_GET['post_type'] ) ) {
    				$link = add_query_arg( 'post_type', wc_clean( $_GET['post_type'] ), $link );
    			}
    
    			// Min Rating Arg
    			if ( isset( $_GET['min_rating'] ) ) {
    				$link = add_query_arg( 'min_rating', wc_clean( $_GET['min_rating'] ), $link );
    			}
    
    			// All current filters
    			if ( $_chosen_attributes = WC_Query::get_layered_nav_chosen_attributes() ) {
    				foreach ( $_chosen_attributes as $name => $data ) {
    					if ( $name === $taxonomy ) {
    						continue;
    					}
    					$filter_name = sanitize_title( str_replace( 'pa_', '', $name ) );
    					if ( ! empty( $data['terms'] ) ) {
    						$link = add_query_arg( 'filter_' . $filter_name, implode( ',', $data['terms'] ), $link );
    					}
    					if ( 'or' == $data['query_type'] ) {
    						$link = add_query_arg( 'query_type_' . $filter_name, 'or', $link );
    					}
    				}
    			}
    		}
    
    		if ( is_string( $link ) ) {
    			return $link;
    		} else {
    			return '';
    		}
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Get product design option
     * ------------------------------------------------------------------------------------------------
     */
    
    if ( ! function_exists( 'woodmart_product_design' ) ) {
    	function woodmart_product_design() {
    		$design = woodmart_get_opt( 'product_design' );
    		if( is_singular( 'product' ) ) {
    			$custom = get_post_meta( get_the_ID(), '_woodmart_product_design', true );
    			if( ! empty( $custom ) && $custom != 'inherit' ) $design = $custom;
    		}
    
    		return $design;
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Is product sticky
     * ------------------------------------------------------------------------------------------------
     */
    
    if ( ! function_exists( 'woodmart_product_sticky' ) ) {
    	function woodmart_product_sticky() {
    		$sticky = woodmart_get_opt( 'product_sticky' ) && in_array( woodmart_get_opt( 'single_product_style' ), array( 1, 2, 3 ) ) ? true : false;
    		if( is_singular( 'product' ) ) {
    			$custom = get_post_meta( get_the_ID(), '_woodmart_product_sticky', true );
    			if( ! empty( $custom ) && $custom != 'inherit' ) $sticky = $custom;
    		}
    
    		return $sticky;
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Register new image size two times larger than standard woocommerce one
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_add_image_size' ) ) {
    	add_action( 'after_setup_theme', 'woodmart_add_image_size' );
    	
    	function woodmart_add_image_size() {
    		
    		if( ! function_exists( 'wc_get_image_size' ) ) return;
    		
    		$shop_catalog = wc_get_image_size( 'woocommerce_thumbnail' );
    		
    		$width = (int) ( $shop_catalog['width'] * 2 );
    		$height = ( !empty( $shop_catalog['height'] ) ) ? (int) ( $shop_catalog['height'] * 2 ) : '';
    		
    		add_image_size( 'woodmart_shop_catalog_x2', $width, $height, $shop_catalog['crop'] );
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Custom thumbnail function for slider
     * ------------------------------------------------------------------------------------------------
     */
    
    if ( ! function_exists( 'woodmart_template_loop_product_thumbnail' ) ) {
    	function woodmart_template_loop_product_thumbnail() {
    		echo woodmart_get_product_thumbnail();
    	}
    }
    
    if ( ! function_exists( 'woodmart_get_product_thumbnail' ) ) {
    	function woodmart_get_product_thumbnail( $size = 'woocommerce_thumbnail', $attach_id = false ) {
    		global $post;
    		$custom_size = $size;
    
    		$defined_sizes = array('woocommerce_thumbnail', 'woodmart_shop_catalog_x2');
    		
    		if( woodmart_loop_prop( 'double_size' ) ) {
    			$size = 'woodmart_shop_catalog_x2';
    		}
    
    		if ( has_post_thumbnail() ) {
    
    			if( ! $attach_id ) $attach_id = get_post_thumbnail_id();
    
    			$props = wc_get_product_attachment_props( $attach_id, $post );
    			
    			if( woodmart_loop_prop( 'img_size' ) ) {
    				$custom_size = woodmart_loop_prop( 'img_size' );
    			}
    			
    			$custom_size = apply_filters( 'woodmart_custom_img_size', $custom_size );
    			
    			if( ! in_array( $custom_size, $defined_sizes ) && function_exists( 'wpb_getImageBySize' ) ) {
    				$img = wpb_getImageBySize( array( 'attach_id' => $attach_id, 'thumb_size' => $custom_size, 'class' => 'content-product-image' ) );
    				$img = $img['thumbnail'];
    
    			} else {
    				$img = wp_get_attachment_image( $attach_id, $size, array(
    					'title'	 => $props['title'],
    					'alt'    => $props['alt'],
    				) );
    			}
    
    			return $img;
    
    		} elseif ( wc_placeholder_img_src() ) {
    			return wc_placeholder_img( $size );
    		}
    	}
    }
    
    remove_action( 'woocommerce_before_shop_loop_item_title', 'woocommerce_template_loop_product_thumbnail', 10 );
    add_action( 'woocommerce_before_shop_loop_item_title', 'woodmart_template_loop_product_thumbnail', 10 );
    
    if( ! function_exists( 'woodmart_grid_swatches_attribute' ) ) {
    	function woodmart_grid_swatches_attribute() {
    		$custom = get_post_meta(get_the_ID(),  '_woodmart_swatches_attribute', true );
    		return empty( $custom ) ? woodmart_get_opt( 'grid_swatches_attribute' ) : $custom;
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Get product page classes (columns) for product images and product information blocks
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_product_images_class' ) ) {
    	function woodmart_product_images_class() {
    		$size = woodmart_product_images_size();
    		$layout = woodmart_get_opt( 'single_product_style' );
    		
    		$class = 'col-lg-' . $size . ' col-12';
    
    		$class .= ( $layout == 4 || $layout == 5 ) ? ' col-md-12' : ' col-md-6';
    
    		return $class;
    	}
    
    	function woodmart_product_images_size() {
    		$summary_size = ( woodmart_product_summary_size() == 12 ) ? 12 : 12 - woodmart_product_summary_size();
    		return apply_filters( 'woodmart_product_summary_size', $summary_size );
    	}
    }
    
    if( ! function_exists( 'woodmart_product_summary_class' ) ) {
    	function woodmart_product_summary_class() {
    		$size = woodmart_product_summary_size();
    		$layout = woodmart_get_opt( 'single_product_style' );
    		
    		$class = 'col-lg-' . $size . ' col-12';
    
    		$class .= ( $layout == 4 || $layout == 5 ) ? ' col-md-12' : ' col-md-6';
    
    		if ( woodmart_get_opt( 'single_product_variations_price' ) ) {
    			$class .= ' woodmart-price-outside';
    		}
    
    		return $class;
    	}
    
    	function woodmart_product_summary_size() {
    		$page_layout = woodmart_get_opt( 'single_product_style' );
    
    		$size = 6;
    		switch ( $page_layout ) {
    			case 1:
    				$size = 8;
    			break;
    			case 2:
    				$size = 6;
    			break;
    			case 3:
    				$size = 4;
    			break;
    			case 4:
    				$size = 12;
    			break;
    			case 5:
    				$size = 12;
    			break;
    		}
    		return apply_filters( 'woodmart_product_summary_size', $size );
    	}
    }
    
    if( ! function_exists( 'woodmart_single_product_class' ) ) {
    	function woodmart_single_product_class() {
    		$classes = array();
    		$classes[] = 'single-product-page';
    		$classes[] = 'single-product-content';
    
    		$design = woodmart_product_design();
    		$product_bg  = woodmart_get_opt( 'product-background' );
    		$page_layout = woodmart_get_opt( 'single_product_style' );
    		
    		$classes[] = 'product-design-' . $design;
    		$classes[] = 'tabs-location-' . woodmart_get_opt( 'product_tabs_location' );
    		$classes[] = 'tabs-type-' . woodmart_get_opt( 'product_tabs_layout' );
    		$classes[] = 'meta-location-' . woodmart_get_opt( 'product_show_meta' );
    		$classes[] = 'reviews-location-' . woodmart_get_opt( 'reviews_location' );
    
    		if( $design == 'alt' ) {
    			$classes[] = 'product-align-center';
    		}
    
    		if( $page_layout == 4 || $page_layout == 5 ) {
    			$classes[] = 'image-full-width';
    		}
    
    		if( woodmart_get_opt( 'single_full_width' ) ) {
    			$classes[] = 'product-full-width';
    		}
    
    		if( woodmart_get_opt( 'product_summary_shadow' ) ) {
    			$classes[] = 'product-summary-shadow';
    		}
    
    		if( woodmart_product_sticky() ) {
    			$classes[] = 'product-sticky-on';
    		}
    
    		if( ! empty( $product_bg ) &&  ! empty( $product_bg['background-color'] ) ) {
    			$classes[] = 'product-has-bg';
    		} else {
    			$classes[] = 'product-no-bg';
    		}
    
    		return $classes;
    
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Configure product image gallery JS
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_get_product_gallery_settings' ) ) {
    	function woodmart_get_product_gallery_settings() {
    		return apply_filters( 'woodmart_product_gallery_settings', array(
    			'images_slider' => woodmart_is_main_product_images_carousel(),
    			'thumbs_slider' => array(
    				'enabled' => woodmart_is_product_thumb_enabled(),
    				'position' => woodmart_get_opt('thums_position'),
    				'items' => array(
    					'desktop' => 4,
    					'tablet_landscape' => 3,
    					'tablet' => 4,
    					'mobile' => 3,
    					'vertical_items' => 3
    				)
    			)
    		) );
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Remove product content link
     * ------------------------------------------------------------------------------------------------
     */
    remove_action( 'woocommerce_before_shop_loop_item', 'woocommerce_template_loop_product_link_open', 10 );
    remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_product_link_close', 5 );
    
    remove_action( 'woocommerce_before_subcategory', 'woocommerce_template_loop_category_link_open', 10 );
    remove_action( 'woocommerce_after_subcategory', 'woocommerce_template_loop_category_link_close', 10 );
    
    /**
     * ------------------------------------------------------------------------------------------------
     * WooCommerce enqueues 3 stylesheets by default. You can disable them all with the following snippet
     * ------------------------------------------------------------------------------------------------
     */
    
    add_filter( 'woocommerce_enqueue_styles', '__return_empty_array' );
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Disable photoswipe
     * ------------------------------------------------------------------------------------------------
     */
    
    remove_action( 'wp_footer', 'woocommerce_photoswipe' );
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Remove ordering from toolbar
     * ------------------------------------------------------------------------------------------------
     */
    
    remove_action( 'woocommerce_before_shop_loop', 'woocommerce_result_count', 20 );
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Unhook the WooCommerce wrappers
     * ------------------------------------------------------------------------------------------------
     */
    
    remove_action( 'woocommerce_before_main_content', 'woocommerce_output_content_wrapper', 10);
    remove_action( 'woocommerce_after_main_content', 'woocommerce_output_content_wrapper_end', 10);
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Disable default product zoom init
     * ------------------------------------------------------------------------------------------------
     */
    add_filter( 'woocommerce_single_product_zoom_enabled', '__return_false' );
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Get CSS class for widget in shop area. Based on the number of widgets
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_get_widget_column_class' ) ) {
    	function woodmart_get_widget_column_class( $sidebar_id = 'filters-area' ) {
    		global $_wp_sidebars_widgets;
    		if ( empty( $_wp_sidebars_widgets ) ) :
    			$_wp_sidebars_widgets = get_option( 'sidebars_widgets', array() );
    		endif;
    		
    		$sidebars_widgets_count = $_wp_sidebars_widgets;
    
    		if ( isset( $sidebars_widgets_count[ $sidebar_id ] ) || $sidebar_id == 'filters-area' ) {
    			$count = ( isset( $sidebars_widgets_count[ $sidebar_id ] ) ) ? count( $sidebars_widgets_count[ $sidebar_id ] ) : 0;
    			$widget_count = apply_filters( 'widgets_count_' . $sidebar_id, $count );
    			$widget_classes = 'widget-count-' . $widget_count;
    			$column = 4;
    			if ( $widget_count < 4 && $widget_count != 0 ) {
    				$column = $widget_count;
    			}
    			$widget_classes .= woodmart_get_grid_el_class( 0, $column, false, 12, 6, 6 );
    			return apply_filters( 'widget_class_' . $sidebar_id, $widget_classes);
    		}
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Play with woocommerce hooks
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_woocommerce_hooks' ) ) {
    	function woodmart_woocommerce_hooks() {
            global $woodmart_prefix;
    
            $product_meta_position = woodmart_get_opt( 'product_show_meta' );
            $product_show_meta = ( $product_meta_position != 'hide' );
            $product_show_share = woodmart_get_opt( 'product_share' );
            $product_show_desc = woodmart_get_opt( 'product_short_description' );
            $tabs_location = woodmart_get_opt( 'product_tabs_location' );
            $reviews_location = woodmart_get_opt( 'reviews_location' );
    
    		remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_upsell_display', 15 );
    		remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_related_products', 20 );
    
    		// Reviews location
    		if( $reviews_location == 'separate' ) {
    			add_filter( 'woocommerce_product_tabs', 'woodmart_disable_reviews_tab', 98 );
    			add_action( 'woocommerce_after_single_product_summary', 'comments_template', 50 );
    		}
    
    		// Upsells position
    		if( is_singular( 'product' ) ) {
    			if( woodmart_get_opt( 'upsells_position' )  == 'sidebar' ) {
    				add_action( 'woodmart_before_sidebar_area', 'woocommerce_upsell_display', 20 );
    			} else {
    				add_action( 'woodmart_woocommerce_after_sidebar', 'woocommerce_upsell_display', 10 );
    			}
    		}
    
    		// Disable related products option
    		if( woodmart_get_opt('related_products') && ! get_post_meta(get_the_ID(),  '_woodmart_related_off', true ) ) {
    			add_action( 'woodmart_woocommerce_after_sidebar', 'woocommerce_output_related_products', 20 );
    		}
    
    		// Disable product tabs title option
    		if( woodmart_get_opt('hide_tabs_titles') || get_post_meta(get_the_ID(),  '_woodmart_hide_tabs_titles', true ) ) {
    			add_filter( 'woocommerce_product_description_heading', '__return_false', 20 );
    			add_filter( 'woocommerce_product_additional_information_heading', '__return_false', 20 );
    		}
    
    		if( woodmart_get_opt('shop_filters') ) {
     			
     			// Use our own order widget list?
    			if( apply_filters( 'woodmart_use_custom_order_widget', true ) ) {
    				if( ! is_active_widget( false, false, 'woodmart-woocommerce-sort-by', true ) ) {
    					add_action( 'woodmart_before_filters_widgets', 'woodmart_sorting_widget', 10 );
    				}
    				if ( woodmart_get_opt( 'shop_filters_type' ) == 'widgets' ) {
    					remove_action( 'woocommerce_before_shop_loop', 'woocommerce_catalog_ordering', 30 );
    				}
    			}
    
    			// Use our custom price filter widget list?
    			if( apply_filters( 'woodmart_use_custom_price_widget', true )  && ! is_active_widget( false, false, 'woodmart-price-filter', true ) ) {
    				add_action( 'woodmart_before_filters_widgets', 'woodmart_price_widget', 20 );
    			}
    
    			// Add 'filters button'
    			add_action( 'woocommerce_before_shop_loop', 'woodmart_filter_buttons', 40 );
    		}
    
    		add_action( 'woocommerce_cart_is_empty', 'woodmart_empty_cart_text', 20 );
    
    		/**
    		 * Remove default empty cart text
    		 */
    		remove_action( 'woocommerce_cart_is_empty', 'wc_empty_cart_message', 10 );
    
    		// Wrapp cart totals
    
    		add_action( 'woocommerce_before_cart_totals', function() {
    			echo '<div class="cart-totals-inner">';
    		}, 1);
    		add_action( 'woocommerce_after_cart_totals', function() {
    			echo '</div><!--.cart-totals-inner-->';
    		}, 200);
    
    		// Brand tab for single product
    		if( woodmart_get_opt( 'brand_tab' ) ) {
    			add_filter( 'woocommerce_product_tabs', 'woodmart_product_brand_tab' );
    		}
    
    		// Poduct brand
    		if( woodmart_get_opt( 'product_brand_location' ) == 'about_title' && is_singular( 'product' ) ) {
    			add_action( 'woocommerce_single_product_summary', 'woodmart_product_brand', 3);
    		} elseif( is_singular( 'product' )) {
    			add_action( 'woodmart_before_sidebar_area', 'woodmart_product_brand', 10 );
    		}
    
    		// Product share
    
    		if ( $product_meta_position != 'after_tabs' && $product_show_share ) {
    			add_action( 'woocommerce_single_product_summary', 'woodmart_product_share_buttons', 60 );
    		}
    
    		// Disable meta and description if turned off
    		if ( $product_meta_position != 'add_to_cart' ) {
    			remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_meta', 40 );
    		}
    
    		if ( ! $product_show_desc ) {
    			remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_excerpt', 20 );
    		}
    
    		// Product tabs location
    
    		if( $tabs_location == 'summary' ) {
    			remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_product_data_tabs', 10 );
    			add_action( 'woocommerce_single_product_summary', 'woocommerce_output_product_data_tabs', 39 );
    		}
    
    		if ( $product_meta_position == 'after_tabs' ) {
    			add_action( 'woodmart_after_product_tabs', function() {
    				echo '<div class="woodmart-before-product-tabs"><div class="container">';
    			}, 10 );
    
    			remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_meta', 40 );
    			if( $product_show_meta ) add_action( 'woodmart_after_product_tabs', 'woocommerce_template_single_meta', 20 );
    			if( $product_show_share ) add_action( 'woodmart_after_product_tabs', 'woodmart_product_share_buttons', 30 );
    
    			add_action( 'woodmart_after_product_tabs', function() {
    				echo '</div></div>';
    			}, 200 );
    		}
    
    		// Product video, 360 view, zoom
    		$video_url = get_post_meta(get_the_ID(),  '_woodmart_product_video', true );
    		$images_360_gallery = woodmart_get_360_gallery_attachment_ids();
    		$image_action = woodmart_get_opt( 'image_action' );
    
    		if( ! empty( $video_url ) || ! empty( $images_360_gallery ) || ! empty( $image_action ) ) {
    			add_action( 'woodmart_on_product_image', 'woodmart_additional_galleries_open', 25 );
    			add_action( 'woodmart_on_product_image', 'woodmart_additional_galleries_close', 100 );
    		}
    		
    		if( ! empty( $video_url ) ) {
    			add_action( 'woodmart_on_product_image', 'woodmart_product_video_button', 30 );
    		}
    
    		if( ! empty( $images_360_gallery ) ) {
    			add_action( 'woodmart_on_product_image', 'woodmart_product_360_view', 40 );
    		}
    
    		if( $image_action != 'popup' && woodmart_get_opt( 'photoswipe_icon' ) ) {
    			add_action( 'woodmart_on_product_image', 'woodmart_product_zoom_button', 50 );
    		}
    
    		// Custom extra content
    		$extra_block = get_post_meta(get_the_ID(),  '_woodmart_extra_content', true );
    
    		if( ! empty( $extra_block ) && $extra_block != 0 ) {
    			$extra_position = get_post_meta(get_the_ID(),  '_woodmart_extra_position', true );
    			if( $extra_position == 'before' ) {
    				add_action( 'woocommerce_before_single_product', 'woodmart_product_extra_content', 20 );
    			} else if( $extra_position == 'prefooter' ) {
    				add_action( 'woodmart_woocommerce_after_sidebar', 'woodmart_product_extra_content', 30 );
    			} else {
    				add_action( 'woodmart_after_product_content', 'woodmart_product_extra_content', 20 );
    				
    			}
    		}
    
    		// Custom tabs
    		add_filter( 'woocommerce_product_tabs', 'woodmart_custom_product_tabs' );
    
    		// Timer on the single product page
    		add_action( 'woocommerce_single_product_summary', 'woodmart_single_product_countdown', 15 );
    
    		// Instagram by hashbat for product
    		add_action( 'woodmart_woocommerce_after_sidebar', 'woodmart_product_instagram', 80 );
    
    		// Cart page move totals
    		remove_action( 'woocommerce_cart_collaterals', 'woocommerce_cart_totals', 10 );
    
    		//Product attibutes after of short description
    		if ( woodmart_get_opt( 'attr_after_short_desc' ) ) {
    			add_action( 'woocommerce_single_product_summary', 'woodmart_display_product_attributes', 21 );
    			add_filter( 'woocommerce_product_tabs', 'woodmart_remove_additional_information_tab', 98 );
    		}
    
    		//Single product stock progress bar
    		if ( woodmart_get_opt( 'single_stock_progress_bar' ) ) {
    			add_action( 'woocommerce_single_product_summary', 'woodmart_stock_progress_bar', 16 );
    		}
    	}
    
    	add_action( 'wp', 'woodmart_woocommerce_hooks', 1000 );
    }
    
    if( ! function_exists( 'woodmart_single_product_countdown' ) ) {
    	function woodmart_single_product_countdown( $tabs ) {
    		$timer = woodmart_get_opt( 'product_countdown' );
    		if( $timer ) woodmart_product_sale_countdown();
    	}
    }
    
    if( ! function_exists( 'woodmart_display_product_attributes' ) ) {
    	function woodmart_display_product_attributes() {
    		global $product;
    		if ( $product && ( $product->has_attributes() || apply_filters( 'wc_product_enable_dimensions_display', $product->has_weight() || $product->has_dimensions() ) ) ) {
    			wc_display_product_attributes( $product );
    		}
    	}
    }
    
    if( ! function_exists( 'woodmart_remove_additional_information_tab' ) ) {
    	function woodmart_remove_additional_information_tab( $tabs ) {
    		unset( $tabs['additional_information'] );
    		return $tabs;
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Additional tab
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_custom_product_tabs' ) ) {
    	function woodmart_custom_product_tabs( $tabs ) {
    		$additional_tab_title = woodmart_get_opt( 'additional_tab_title' );
    		$custom_tab_title = get_post_meta( get_the_ID(),  '_woodmart_product_custom_tab_title', true );
    		
    		if ( $additional_tab_title ) {
    			$tabs['woodmart_additional_tab'] = array(
    				'title' 	=> $additional_tab_title,
    				'priority' 	=> 50,
    				'callback' 	=> 'woodmart_additional_product_tab_content'
    			);
    		}
    		
    		if ( $custom_tab_title ) {
    			$tabs['woodmart_custom_tab'] = array(
    				'title' 	=> $custom_tab_title,
    				'priority' 	=> 60,
    				'callback' 	=> 'woodmart_custom_product_tab_content'
    			);
    		}
    		
    		return $tabs;
    	}
    }
    
    if( ! function_exists( 'woodmart_additional_product_tab_content' ) ) {
    	function woodmart_additional_product_tab_content() {
    		// The new tab content
    		$tab_content = woodmart_get_opt( 'additional_tab_text' );
    		echo do_shortcode( $tab_content );
    		
    	}
    }
    
    if( ! function_exists( 'woodmart_custom_product_tab_content' ) ) {
    	function woodmart_custom_product_tab_content() {
    		// The new tab content
    		$tab_content = get_post_meta( get_the_ID(),  '_woodmart_product_custom_tab_content', true );
    		echo do_shortcode( $tab_content );
    	}
    }
    
    if( ! function_exists( 'woodmart_disable_reviews_tab' ) ) {
    	function woodmart_disable_reviews_tab( $tabs ) {
    	    unset( $tabs['reviews'] );  // Removes the reviews tab
    	    return $tabs;
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Filters buttons
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_filter_widgts_classes' ) ) {
    	function woodmart_filter_widgts_classes( $count ) {
    
    		if( apply_filters( 'woodmart_use_custom_order_widget', true )  && ! is_active_widget( false, false, 'woodmart-woocommerce-sort-by', true ) ) {
    			$count++;
    		}
    
    		if( apply_filters( 'woodmart_use_custom_price_widget', true )  && ! is_active_widget( false, false, 'woodmart-price-filter', true ) ) {
    			$count++;
    		}
    
    		return $count;
    	}
    
    	add_filter('widgets_count_filters-area', 'woodmart_filter_widgts_classes');
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Force WOODMART Swatche layered nav and price widget to work
     * ------------------------------------------------------------------------------------------------
     */
    
    add_filter( 'woocommerce_is_layered_nav_active', 'woodmart_is_layered_nav_active' );
    if( ! function_exists( 'woodmart_is_layered_nav_active' ) ) {
    	function woodmart_is_layered_nav_active() {
    		return is_active_widget( false, false, 'woodmart-woocommerce-layered-nav', true );
    	}
    }
    
    add_filter( 'woocommerce_is_price_filter_active', 'woodmart_is_layered_price_active' );
    
    if( ! function_exists( 'woodmart_is_layered_price_active' ) ) {
    	function woodmart_is_layered_price_active() {
    		$result = is_active_widget( false, false, 'woodmart-price-filter', true );
    		if( ! $result ) {
    			$result = apply_filters( 'woodmart_use_custom_price_widget', true );
    		}
    		return $result;
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Change the position of woocommerce breadcrumbs
     * ------------------------------------------------------------------------------------------------
     */
    remove_action( 'woocommerce_before_main_content', 'woocommerce_breadcrumb', 20 );
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Add photoswipe template to body
     * ------------------------------------------------------------------------------------------------
     */
    add_action( 'woodmart_after_footer', 'woodmart_photoswipe_template', 1000 );
    if( ! function_exists( 'woodmart_photoswipe_template' ) ) {
    	function woodmart_photoswipe_template() {
    		get_template_part('woocommerce/single-product/photo-swipe-template');
    	}
    }
    
    // **********************************************************************//
    // ! Start woocommerce customer session
    // **********************************************************************//
    
    if( ! function_exists( 'woodmart_set_customer_session' ) ) {
    
    	add_action( 'woodmart_before_shop_page', 'woodmart_set_customer_session', 10 );
    
    	function woodmart_set_customer_session() {
    		if( ! function_exists( 'WC' ) ) return;
    		if ( WC()->version > '2.1' && ( ! is_admin() || defined( 'DOING_AJAX' ) ) && ! defined( 'DOING_CRON' ) ) :
    			WC()->session->set_customer_session_cookie( true );
    		endif;
    	}
    }
    
    // **********************************************************************//
    // ! Items per page select on the shop page
    // **********************************************************************//
    
    if( ! function_exists( 'woodmart_products_per_page_action' ) ) {
    
    	add_action( 'woodmart_before_shop_page', 'woodmart_products_per_page_action', 100 );
    
    	function woodmart_products_per_page_action() {
    		if ( isset( $_REQUEST['per_page'] ) ) :
    			if( ! class_exists('WC_Session_Handler')) return;
    			$s = WC()->session; // WC()->session
    			if ( is_null( $s ) ) return;
    			
    			$s->set( 'shop_per_page', intval( $_REQUEST['per_page'] ) );
    		endif;
    	}
    }
    
    // **********************************************************************//
    // ! Get Items per page number on the shop page
    // **********************************************************************//
    
    if( ! function_exists( 'woodmart_get_products_per_page' ) ) {
    	function woodmart_get_products_per_page() {
    		if( ! class_exists('WC_Session_Handler') ) return;
    		$s = WC()->session; // WC()->session
    		if ( is_null( $s ) ) return intval( woodmart_get_opt('shop_per_page') );
    		
    		if ( isset( $_REQUEST['per_page'] ) && ! empty( $_REQUEST['per_page'] ) ) :
    			return intval( $_REQUEST['per_page'] );
    		elseif ( $s->__isset( 'shop_per_page' ) ) :
    			$val = $s->__get( 'shop_per_page' );
    			if( ! empty( $val ) )
    				return intval( $s->__get( 'shop_per_page' ) );
    		endif;
    		return intval( woodmart_get_opt('shop_per_page') );
    	}
    }
    
    // **********************************************************************//
    // ! Items view select on the shop page
    // **********************************************************************//
    
    if( ! function_exists( 'woodmart_shop_view_action' ) ) {
    
    	add_action( 'woodmart_before_shop_page', 'woodmart_shop_view_action', 100 );
    
    	function woodmart_shop_view_action() {
    		if( ! class_exists('WC_Session_Handler')) return;
    		$s = WC()->session; // WC()->session
    		if ( is_null( $s ) ) return;
    
    		if ( isset( $_REQUEST['shop_view'] ) ) {
    			$s->set( 'shop_view', $_REQUEST['shop_view'] );
    		}
    		if ( isset( $_REQUEST['per_row'] ) ) {
    			$s->set( 'shop_per_row', $_REQUEST['per_row'] );
    		}
    	}
    }
    // **********************************************************************//
    // ! Get Items per ROW number on the shop page
    // **********************************************************************//
    
    if( ! function_exists( 'woodmart_get_products_columns_per_row' ) ) {
    	function woodmart_get_products_columns_per_row() {
    		if( ! class_exists('WC_Session_Handler') ) return;
    		$s = WC()->session; // WC()->session
    		if ( is_null( $s ) ) return intval( woodmart_get_opt('products_columns') );
    
    		if ( isset( $_REQUEST['per_row'] ) ) {
    			return intval( $_REQUEST['per_row'] );
    		}elseif ( $s->__isset( 'shop_per_row' ) ) {
    			return intval( $s->__get( 'shop_per_row' ) );
    		}else {
    			return intval( woodmart_get_opt('products_columns') );
    		}
    	}
    }
    
    if( ! function_exists( 'woodmart_get_shop_view' ) ) {
    	function woodmart_get_shop_view() {
    		if( ! class_exists('WC_Session_Handler') ) return;
    		$s = WC()->session; // WC()->session
    		if ( is_null( $s ) ) return woodmart_get_opt('shop_view');
    
    		if ( isset( $_REQUEST['shop_view'] ) ) {
    			return $_REQUEST['shop_view'];
    		}elseif ( $s->__isset( 'shop_view' ) ) {
    			return $s->__get( 'shop_view' );
    		}else {
    			$shop_view = woodmart_get_opt('shop_view');
    			if ( $shop_view == 'grid_list' ) {
    				return 'grid';
    			}elseif( $shop_view == 'list_grid'){
    				return 'list';
    			}else{
    				return $shop_view;
    			}
    		}
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Remove () from numbers in categories widget
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_filter_product_categories_widget_args' ) ) {
    	function woodmart_filter_product_categories_widget_args( $list_args ) {
    
    		$list_args['walker'] = new WOODMART_WC_Product_Cat_List_Walker();
    
    		return $list_args;
    	}
    
    	add_filter( 'woocommerce_product_categories_widget_args', 'woodmart_filter_product_categories_widget_args', 10, 1);
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * AJAX add to cart for all product types
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_ajax_add_to_cart' ) ) {
    	function woodmart_ajax_add_to_cart() {
    		// Get messages
    		ob_start();
    
    		wc_print_notices();
    
    		$notices = ob_get_clean();
    
    		// Get mini cart
    		ob_start();
    
    		woocommerce_mini_cart();
    
    		$mini_cart = ob_get_clean();
    
    		// Fragments and mini cart are returned
    		$data = array(
    			'notices' => $notices,
    			'fragments' => apply_filters( 'woocommerce_add_to_cart_fragments', array(
    					'div.widget_shopping_cart_content' => '<div class="widget_shopping_cart_content">' . $mini_cart . '</div>'
    				)
    			),
    			'cart_hash' => apply_filters( 'woocommerce_add_to_cart_hash', WC()->cart->get_cart_for_session() ? md5( json_encode( WC()->cart->get_cart_for_session() ) ) : '', WC()->cart->get_cart_for_session() )
    		);
    
    		wp_send_json( $data );
    
    		die();
    	}
    }
    
    add_action( 'wp_ajax_woodmart_ajax_add_to_cart', 'woodmart_ajax_add_to_cart' );
    add_action( 'wp_ajax_nopriv_woodmart_ajax_add_to_cart', 'woodmart_ajax_add_to_cart' );
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Function to prepare classes for grid element (column)
     * ------------------------------------------------------------------------------------------------
     */
    
    if ( ! function_exists( 'woodmart_get_grid_el_class' ) ) {
    	function woodmart_get_grid_el_class( $loop = 0, $columns = 4, $different_sizes = false, $xs_size = false, $sm_size = 4, $lg_size = 3, $md_size = false ) {
    		$classes = '';
    
    		$items_wide = woodmart_get_wide_items_array( $different_sizes );
    
    		if ( ! $xs_size ) {
    			$xs_size = apply_filters( 'woodmart_grid_xs_default', 6 );
    		}
    
    		if ( $columns > 0 ) {
    			$lg_size = 12 / $columns;
    		}
    
    		if ( ! $md_size ) {
    			$md_size = $lg_size;
    		}
    
    		if ( $columns > 4 ) {
    			$md_size = 3;
    		}
    
    		if ( $columns <= 3 ) {
    			if ( $columns == 1 ) {
    				$sm_size = 12;
    				$xs_size = 12;
    			} else {
    				$sm_size = 6;
    			}
    		}
    
    		// Change the layout alternating columns
    		if ( $different_sizes && ( in_array( $loop, $items_wide ) )) {
    		    
    		    switch ($columns):
    		        
                    case 3:
                        $lg_size = 6;
    			        $md_size = 6;
                    break;
                    
                    case 4:
                        $lg_size = 4;
    			        $md_size = 4;
                    break;
                    
                    case 5:
                        $lg_size = 3;
    			        $md_size = 3;
                    break;
                    
                    case 6:
                        $lg_size = '20_0';
    			        $md_size = 3;
                    break;
                
                endswitch;
    	
    		}
    		
            /*
            Because you made a custom work for showing 5 columns layout i rewrote the code so that
            when the Products grid with different sizes is disabled the columns work as normal
            but when is enabled to make the 5-4-5 layout work
            */
            
    		if ( ! $different_sizes && ( in_array( $columns, array( 5, 7, 8, 9, 10, 11 ) ) )) {
                $lg_size = str_replace( '.', '_', round( 100 / $columns, 1 ) );
                if ( ! strpos( $lg_size, '_' ) ) {
                    $lg_size = $lg_size . '_0';
                }
            }
            if ( ! in_array( $loop, $items_wide ) &&  ( in_array( $columns, array( 5, 7, 8, 9, 10, 11 ) ) ) ) {
                $lg_size = str_replace( '.', '_', round( 100 / $columns, 1 ) );
                if ( ! strpos( $lg_size, '_' ) ) {
                    $lg_size = $lg_size . '_0';
                }
            }
            
    		$sizes = array(
    			array(
    				'name' => 'col-lg',
    				'value' => $lg_size,
    			),
    			array(
    				'name' => 'col-md',
    				'value' => $md_size,
    			),
    			array(
    				'name' => 'col-sm',
    				'value' => $sm_size,
    			),
    			array(
    				'name' => 'col',
    				'value' => $xs_size,
    			),
    		);
    		
    		$result_sizes = array();
    		foreach ( $sizes as $index => $value ) {
    			if ( isset( $sizes[$index + 1] ) ) {
    				$next = $sizes[$index + 1];
    			} else {
    				continue;
    			}
    			
    			if ( $value['value'] === $next['value'] ) {
    				$result_sizes[$next['name']] = $next['value'];
    				unset($result_sizes[$value['name']]);
    			} else if ( $value['value'] !== $next['value'] ) {
    				$result_sizes[$value['name']] = $value['value'];
    				$result_sizes[$next['name']] = $next['value'];
    			}
    		}
    		
    		if ( apply_filters( 'woodmart_old_product_grid_classes', false ) ) {
    			$result_sizes = array(
    				'col-lg' => $lg_size,
    				'col-md' => $md_size,
    				'col-sm' => $sm_size,
    				'col' => $xs_size,
    			);
    		}
    
    		foreach ( $result_sizes as $size => $value ) {
    			$classes .= ' ' . $size . '-' . $value;
    		}
    		
    		if ( $loop > 0 && $columns > 0 ) {
    			if ( 0 == ( $loop - 1 ) % $columns || 1 == $columns ) {
    				$classes .= ' first ';
    			}
    			if ( 0 == $loop % $columns ) {
    				$classes .= ' last ';
    			}
    		}
    
    		return $classes;
    	}
    }
    
    if ( ! function_exists( 'woodmart_get_wide_items_array' ) ) {
    	function woodmart_get_wide_items_array( $different_sizes = false ){
    	    
    	    //To create an array big enough so that the alternate pattern repeats and not stops after few products
    	    $loop_cycle = 999;
    	    
    	    //Get the selected columns
    	    $perrow = apply_filters( 'loop_shop_columns', woodmart_get_products_columns_per_row() );
    	    
    /**
    
    You default function defined an array of ( 5, 6, 7, 8, 13, 14 )
    basically what it does was to change the product size in products
    that were inside this array, after the 14 product the repeated pattern stoped.
    
    Below i create a function that does the following thing.
    If you choose a 3 column layout it puts in array the numbers 4, 5 then skips 6, 7, 8 
    and puts 9, 10 and so on.
    
    These numbers in array are the positions of the products that have to change the size so that the final result looks like
    
    3, 3, 3
    
    2, 2 => products position 4, 5
    
    3, 3, 3
    
    2, 2 => products position 9, 10
    
    and so on
    
    Another example is
    
    4, 4, 4, 4
    
    3, 3, 3 => products position 5, 6, 7
    
    4, 4, 4, 4
    
    3, 3, 3 => products position 12, 13, 14
    
    This function works according to what collumn you have selected.
    
    So if you select a grid layout with 3 columns the pattern will be
    
    3/2
    
    For 4 columns the pattern will be
    
    4/3
    
    for 5
    
    5/4
    
    for 6
    
    6/5
    
    **/
            
            //My custom function Starts
    	    $stop = ($perrow+($perrow-1))*$loop_cycle;
    		$cycle = $perrow+($perrow-1);
    		
    		$arr = array();
    		
    		
    		for ($i=1; $i<=$stop; $i++) {
    			if ($i>($cycle-($perrow-1)) && $i<=$cycle) {
    				array_push($arr, $i);
    				if ($i==$cycle) $cycle += $perrow+($perrow-1);
    			} else continue;
    		}
    		
    		return $arr;
    		//My custom function Ends
    		
    		
    		
    		//Instead of array( 5, 6, 7, 8, 13, 14 ) i put the $arr array that generated above
    		$items_wide = apply_filters( 'woodmart_wide_items', array( $arr ) );
    
    		if( is_array( $different_sizes ) ) {
    			$items_wide = apply_filters( 'woodmart_wide_items', $different_sizes );
    		}
    
    		return $items_wide;
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Woodmart Related product count
     * ------------------------------------------------------------------------------------------------
     */
    if( ! function_exists( 'woodmart_related_count' ) ) {
    	add_filter( 'woocommerce_output_related_products_args', 'woodmart_related_count' );
    	  function woodmart_related_count() {
    		$args['posts_per_page'] = ( woodmart_get_opt( 'related_product_count' ) ) ? woodmart_get_opt( 'related_product_count' ) : 8;
    		return $args;
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Reset loop
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_reset_loop' ) ) {
    	function woodmart_reset_loop() {
    		unset( $GLOBALS['woodmart_loop'] );
    		woodmart_setup_loop();
    	}
    	add_action( 'woocommerce_after_shop_loop', 'woodmart_reset_loop', 1000 );
    	add_action( 'loop_end', 'woodmart_reset_loop', 1000 );
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Get loop prop
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_loop_prop' ) ) {
    	function woodmart_loop_prop( $prop, $default = '' ) {
    		woodmart_setup_loop();
    		
    		return isset( $GLOBALS['woodmart_loop'], $GLOBALS['woodmart_loop'][ $prop ] ) ? $GLOBALS['woodmart_loop'][ $prop ] : $default;
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Set loop prop
     * ------------------------------------------------------------------------------------------------
     */
    
    if( ! function_exists( 'woodmart_set_loop_prop' ) ) {
    	function woodmart_set_loop_prop( $prop, $value = '' ) {
    		if ( ! isset( $GLOBALS['woodmart_loop'] ) ) woodmart_setup_loop();
    
    		$GLOBALS['woodmart_loop'][ $prop ] = $value;
    	}
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Setup loop
     * ------------------------------------------------------------------------------------------------
     */
     
    if( ! function_exists( 'woodmart_setup_loop' ) ) {
    	function woodmart_setup_loop( $args = array() ) {
    		if ( isset( $GLOBALS['woodmart_loop'] ) ) return; // If the loop has already been setup, bail.
    		
    		$default_args = array(
    			'products_different_sizes' 	=> woodmart_get_opt( 'products_different_sizes' ),
    			'product_categories_design' => woodmart_get_opt( 'categories_design' ),
    			'product_categories_shadow' => woodmart_get_opt( 'categories_with_shadow' ),
    			'products_columns' 		    => ( woodmart_get_opt( 'per_row_columns_selector' ) ) ? apply_filters( 'loop_shop_columns', woodmart_get_products_columns_per_row() ) : woodmart_get_opt( 'products_columns' ),
    			'product_categories_style'  => false,
    			'product_hover' 			=> woodmart_get_opt( 'products_hover' ),
    			'products_view' 			=> woodmart_get_shop_view(),
    			'products_masonry' 			=> woodmart_get_opt( 'products_masonry' ),
    			
    			'timer' 					=> woodmart_get_opt( 'shop_countdown' ),
    			'progress_bar'              => woodmart_get_opt( 'grid_stock_progress_bar' ),
    			'swatches'					=> false,
    			
    			'is_slider' 				=> false,
    			'is_shortcode' 				=> false,
    			'is_quick_view' 			=> false,
    			
    			'woocommerce_loop' 			=> 0,
    			'woodmart_loop' 			=> 0,
    			
    			'parts_media' 				=> true,
    			'parts_title' 				=> true,
    			'parts_meta' 				=> true,
    			'parts_text' 				=> true,
    			'parts_btn' 				=> true,
    			
    			'blog_design' 				=> woodmart_get_opt( 'blog_design' ),
    			'blog_type' 				=> false,
    			'blog_columns' 				=> woodmart_get_opt( 'blog_columns' ),
    			'img_size' 					=> false,
    			'double_size' 				=> false,
    
    			'portfolio_style'			=> woodmart_get_opt( 'portoflio_style' ),
    			'portfolio_column'			=> woodmart_get_opt( 'projects_columns' ),
    		);
    		
    		$GLOBALS['woodmart_loop'] = wp_parse_args( $args, $default_args );
    	}
    	add_action( 'woocommerce_before_shop_loop', 'woodmart_setup_loop', 10 );
    	add_action( 'wp', 'woodmart_setup_loop', 50 );
    	add_action( 'loop_start', 'woodmart_setup_loop', 10 );
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Hide woocommerce notice
     * ------------------------------------------------------------------------------------------------
     */
    if ( ! function_exists( 'woodmart_hide_outdated_templates_notice' ) ) {
    	function woodmart_hide_outdated_templates_notice( $value, $notice ) {
    		if ( $notice == 'template_files' ) {
    			return false;
    		}
    
    		return $value;
    	}
    
    	add_filter( 'woocommerce_show_admin_notice', 'woodmart_hide_outdated_templates_notice', 2, 10 );
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Fix for single product image sizes
     * ------------------------------------------------------------------------------------------------
     */
    if ( ! function_exists( 'woodmart_single_product_image_sizes') ) {
    	function woodmart_single_product_image_sizes() {
    		$sizes = wc_get_image_size( 'woocommerce_single' );
    		if ( ! $sizes['height'] ) {
    			$sizes['height'] = $sizes['width'];
    		}
    
    		return array( $sizes['width'], $sizes['height'] );
    	}
    
    	add_filter( 'woocommerce_gallery_thumbnail_size', 'woodmart_single_product_image_sizes' );
    }
    
    /**
     * ------------------------------------------------------------------------------------------------
     * Change single product notice position
     * ------------------------------------------------------------------------------------------------
     */
    remove_action( 'woocommerce_before_single_product', 'woocommerce_output_all_notices', 10 );
    remove_action( 'woocommerce_before_shop_loop', 'woocommerce_output_all_notices', 10 );
    
    add_action( 'woodmart_before_single_product_summary_wrap', 'woocommerce_output_all_notices', 10 );
    add_action( 'woodmart_before_shop_page', 'woocommerce_output_all_notices', 10 );
    

    In reply to: Single product Page

    #160810

    Hello,

    If you want to add description and additional info in your product then edit your product and add your’s description in WP-Bakery block.

    Screenshot for clarification: https://jmp.sh/FjMC2R3

    In general the additional information tab only shown when you add attributes to the products. If you want to add the Additional information tab you have to add all those attributes from the product as in the screenshot: https://jmp.sh/2pFIr97

    Result: https://jmp.sh/AMlSqki

    To add SKU/category/share after the product tabs. Then go to theme settings >> Product Page >> SHOW / HIDE ELEMENTS >> Show product meta. You need to choose “After Tabs” option.

    In order to display “You may also like..” you need to enter a product editing mode and add products into Upsells of Linked product tabs as shown: http://prntscr.com/j5tv88
    You will find more information here: https://docs.woocommerce.com/document/related-products-up-sells-and-cross-sells/

    To display the related products section you need to enable the “Show related products” option from Theme Settings >> Product Page >> SHOW / HIDE ELEMENTS.

    Then you have to select a category from the product edit page as in the screenshot: https://jmp.sh/yqABzGC

    For example, if you have three products and all of them are of the same category then in the related products section of all those three products the other remaining 2 products will be shown.

    No, there is no such option to show you may also like section in the right sidebar.

    Best Regards.

    #160099

    Hello,

    When you set showing an attribute on the product page, WooCommerce generates an additional information tab and shows the attribute.

    In general the additional information tab only shown when you add attributes to the products. If you want to add the Additional information tab you have to add all those attributes from the product as in the screenshot: https://jmp.sh/2pFIr97

    Result: https://jmp.sh/AMlSqki

    Best Regards.

    #154065

    Hello,

    For the additional tab you can use “Additional tab title” and “Additional tab content” options from Theme Settings >> Product Page >> TABS:

    Screenshot for clarification: https://jmp.sh/EM0NPNB

    For adding slider you can use the WoodMart slider or revolution slider using Wp-Bakery page builder inside the description tab or in the additional tab.

    You can configure upsells products to show on some particular products. Read more information in the WooCommerce documentation https://docs.woocommerce.com/document/related-products-up-sells-and-cross-sells/

    Best Regards.

    masood nikroo
    Participant
    #153391

    Hello,
    i want to remove additional tab on all my products page.

    https://drive.google.com/file/d/12r01oNHHkTxNyhpg5LF0UNiTDt33P1sR/view?usp=drivesdk

    how can i do it?
    Regards.

    In reply to: Woocommerce Features

    epicsm
    Participant
    #153336

    Hello again!

    2) I did this originally but the green sale badge did not display on the product so I added the category to see if this worked. I have removed the category and the green sales badge is still not displaying on the product/s in the New for 2019 category.

    3) I found a php snippet which has removed the additional information tab

    function woo_remove_product_tabs( $tabs ) {
    unset( $tabs[‘additional_information’] );
    return $tabs;
    }
    add_filter( ‘woocommerce_product_tabs’, ‘woo_remove_product_tabs’, 98 );
    add_filter(‘gettext’, ‘change_rp_text’, 10, 3);
    add_filter(‘ngettext’, ‘change_rp_text’, 10, 3);

    5) This is a woocommerce thing and I was hoping you might have a resolution as it never works and I have selected categories. I have got around this problem now by renaming the title to ‘Other Products You Might Like’.

    function change_rp_text($translated, $text, $domain)
    {
    if ($text === ‘Related products’ && $domain === ‘woocommerce’) {
    $translated = esc_html__(‘Other Products You Might Like’, $domain);
    }
    return $translated;
    }

    6) Where do I edit the page titles section I need to display? This is what I am trying to achieve https://prnt.sc/ppw9nb

    Many thanks

    In reply to: Woocommerce Features

    #153074

    Most Welcome,

    2) I have seen you screenshot. You do not have to select a category from the categories or tag option. I described you to create an html block and then use the short code inside the specific category description from the Products >> Categories: https://jmp.sh/2EYgtpx

    3) As you said that most of your products do not have variations. You can share the URL of specific product in which that tab exist so I can remove the “Additional Information” tab for you. Also share the login credentials of your site.

    4) I’m glad that you resolved the issue by yourself. You are the best.

    5) You can select a category from the product edit page as in the screenshot: https://jmp.sh/yqABzGC

    For example, if you have three products and all of them are of the same category then in the related products section of all these three products the other remaining 2 products will be shown.

    6) We do not need to write CSS code to achieve this. You can simply display the title again by edit those pages title section.

    Remember that if you switched off the title of shop page then the categories and subcategories also did not shown the title.

    Best Regards.

    In reply to: Woocommerce Features

    epicsm
    Participant
    #153035

    Thank you for your replies.

    2) I have followed the instructions but the green New badge icon is not appearing on the productimage.These are my settings https://prnt.sc/ppcbm5

    3) Most of my products are simple and have no variations or attributes. This is what I am trying to hide https://prnt.sc/ppcgfx Just the default Woocommerce additional information tab.

    4) I have found where the issue was. On each product the Tax Status field should be set to Taxable. On my products it was set to none. Took me a good while to find this!

    5) Where do I select the same category? I would love to solve the related products so related products in the category are displayed

    6) I have solved this by switching off the title on the ‘Shop’ page settings. I really love this feature so now the sub categories display on the categories title section except for the shop page

    Many thanks

    In reply to: Woocommerce Features

    #152885

    Hello,

    1) To hide the breadcrumbs from the single product page. Kindly insert the below CSS code in Theme Settings >> Custom CSS >> Global Custom CSS:

    .single-product .woocommerce-breadcrumb {
    display:none;
    }

    2) The “New” label can only be used for products it can’t be displayed category wise. But you can use our theme’s “Products (carousel or grid)” element in html block and select the “Product with NEW label” option from the dropdown.

    Then used that html shortcode in your product category description.

    Screenshot for clarification: https://jmp.sh/cZyado9

    So that specific category will only shown the new products.

    3) When you set showing an attribute on the product page, Woocommerce generates an additional information tab and shows the attribute. Check and disable this in attributes added to products.

    4) As you want to display “Inc VAT” at the end of price.

    You need to put “Inc VAT” at WooCommerce >> Settings >> Tax >> Price display suffix.

    Screenshot: https://jmp.sh/WLLLo0Z
    After doing this must clear your site and browser cache.

    Best Regards.

    #149985

    Hello,

    You can add description one by one to the products and you also used the same content.

    But there is no such option to write some description in a block and then select products for that description. This is not possible currently.

    You can try the “Additional tab” option from Theme Settings > Product page > Additional tab title/content https://prnt.sc/p4ovpn

    But remember that it shows only when you set showing an attribute on the product page, WooCommerce generates and additional information tab and shows the attribute.

    Best Regards.

    Bogdan Donovan
    Keymaster
    #144002

    Hi,

    In the latest update, product grid structure was optimized so the old custom code will be not working. Try to replace your child theme code from this post (https://xtemos.com/forums/topic/you-have-activated-your-purchase-code-more-than-3-times-you-are-allowed-to-do-t/#post-44948) with the following code:

    <?php 
    global $product;
    $action_classes  = '';
    $add_btn_classes = '';
    if ( 'carousel' === woodmart_loop_prop('products_view') ) {
        $action_classes  .= ' woodmart-buttons wd-pos-r-t';
        $add_btn_classes .= ' wd-action-btn wd-add-cart-btn wd-style-icon';
    } else {
        $action_classes  .= ' wd-bottom-actions';
    }
    do_action( 'woocommerce_before_shop_loop_item' ); ?>
    <div class="product-wrapper">
        <div class="content-product-imagin"></div>
        <div class="product-element-top">
            <a href="<?php echo esc_url( get_permalink() ); ?>" class="product-image-link">
                <?php
                    /**
                     * woocommerce_before_shop_loop_item_title hook
                     *
                     * @hooked woocommerce_show_product_loop_sale_flash - 10
                     * @hooked woodmart_template_loop_product_thumbnail - 10
                     */
                    do_action( 'woocommerce_before_shop_loop_item_title' );
                ?>
            </a>
            <?php woodmart_hover_image(); ?>
            <div class="wrapp-swatches"><?php echo woodmart_swatches_list();?><?php woodmart_add_to_compare_loop_btn(); ?></div>
            <?php woodmart_quick_shop_wrapper(); ?>
        </div>
        <div class="product-information">
            <?php
                /**
                 * woocommerce_shop_loop_item_title hook
                 *
                 * @hooked woocommerce_template_loop_product_title - 10
                 */
                
                do_action( 'woocommerce_shop_loop_item_title' );
            ?>
            <?php
                woodmart_product_categories();
                woodmart_product_brands_links();
            ?>
            <div class="product-rating-price">
                <div class="wrapp-product-price">
                    <?php
                        /**
                         * woocommerce_after_shop_loop_item_title hook
                         *
                         * @hooked woocommerce_template_loop_rating - 5
                         * @hooked woocommerce_template_loop_price - 10
                         */
                        do_action( 'woocommerce_after_shop_loop_item_title' );
                    ?>
                </div>
            </div>
            <div class="fade-in-block">
                <div class="hover-content woodmart-more-desc">
                    <div class="hover-content-inner woodmart-more-desc-inner">
                        <?php 
                            if ( woodmart_get_opt( 'base_hover_content' ) == 'excerpt' ) {
                                echo do_shortcode( get_the_excerpt() );
                            }else if ( woodmart_get_opt( 'base_hover_content' ) == 'additional_info' ){
                                wc_display_product_attributes( $product );
                            }
                        ?>
                    </div>
                </div>
                <div class="woodmart-buttons-alt <?php echo esc_attr( $action_classes ); ?>">
                    <div class="wrap-wishlist-button"><?php do_action( 'woodmart_product_action_buttons' ); ?></div>
                    <div class="woodmart-add-btn<?php echo esc_attr( $add_btn_classes ); ?>"><?php do_action( 'woocommerce_after_shop_loop_item' ); ?></div>
                    <div class="wrap-quickview-button"><?php woodmart_quick_view_btn( get_the_ID() ); ?></div>
                </div>
                <?php if ( woodmart_loop_prop( 'progress_bar' ) ): ?>
                    <?php woodmart_stock_progress_bar(); ?>
                <?php endif ?>
                
                <?php if ( woodmart_loop_prop( 'timer' ) ): ?>
                    <?php woodmart_product_sale_countdown(); ?>
                <?php endif ?>
            </div>
        </div>
    </div>

    After that try to replace custom CSS code from this post (https://xtemos.com/forums/topic/you-have-activated-your-purchase-code-more-than-3-times-you-are-allowed-to-do-t/page/2/#post-45048) with following custom CSS code:

    body .product-grid-item .woodmart-buttons-alt {
    	max-width: 300px;
    	width: 100%;
    	margin: 0 auto;
    	flex-direction: column;
    	align-items: stretch;
    }
    
    body .product-grid-item .fade-in-block .woodmart-buttons-alt div > a {
    	color: white;
    	border-radius: 0 !important;
    	font-size: 12px;
    	font-weight: bold;
    	text-transform: uppercase;
    	width: 100%;
    	padding: 10px 14px;
    }
    
    body .product-grid-item .fade-in-block .woodmart-buttons-alt div > a.loading > span {
    display: none;
    }
    
    .product-grid-item .woodmart-buttons-alt div > a:hover,
    .product-grid-item .woodmart-buttons-alt div > a:focus {
    	color: white;
    	-webkit-box-shadow: inset 0 -2px 0 rgba(0,0,0,.15);
    	box-shadow: inset 0 -2px 0 rgba(0,0,0,.15);
    }
    
    .product-grid-item .woodmart-buttons-alt #wcbpg_open_popup {
    	padding: 10px 14px;
    	text-decoration: none;
    }
    
    .product-grid-item .woodmart-buttons-alt div > a > span {
        -webkit-transform: none !important;
        transform: none !important;
    }
    
    .product-grid-item .woodmart-buttons-alt div > a:before {
    	display: none !important;
    }
    
    .product-grid-item .wrap-wishlist-button i {
    	display: none;
    }
    
    .product-grid-item .woodmart-buttons-alt .yith_ywraq_add_item_product_message {
    	display: none !important;
    }
    
    .product-grid-item .wrap-wishlist-button,
    .product-grid-item .woodmart-add-btn > a,
    .product-grid-item .woodmart-add-btn > div {
    	margin-bottom: 5px !important;
    }
    
    .product-grid-item .woodmart-buttons-alt div > a,
    .product-grid-item .woodmart-buttons-alt div > a {
    		background-color: #83B735 !important;
    }
    
    .product-grid-item .woodmart-buttons-alt div > a:hover,
    .product-grid-item .woodmart-buttons-alt div > a:focus {
    		background-color: #6ca300 !important;
    }

    Regards

Viewing 30 results - 91 through 120 (of 155 total)