/home/ytevagd/public_html/wp-content/themes/flatsome/inc/woocommerce/structure-wc-product-page.php
<?php

function flatsome_product_summary_fix(){
  if(is_product()){
    if(!get_theme_mod('product_info_meta', 1)){
      remove_action('woocommerce_single_product_summary','woocommerce_template_single_meta',40);
    }
    if(!get_theme_mod('product_info_share', 1)){
      remove_action('woocommerce_single_product_summary','woocommerce_template_single_sharing',50);
    }
  }
}
add_action('wp_head','flatsome_product_summary_fix', 9999);

// Product summary classes
function flatsome_product_summary_classes( $main = true, $align = true, $form = true ) {
	$classes = $main ? array( 'product-summary' ) : array();
	if ( $align && get_theme_mod( 'product_info_align' ) ) {
		$classes[] = 'text-' . get_theme_mod( 'product_info_align', 'left' );
	}
	if ( $form && get_theme_mod( 'product_info_form' ) ) {
		$classes[] = 'form-' . get_theme_mod( 'product_info_form', '' );
	}
	echo implode( ' ', $classes );
}

function flatsome_product_upsell_sidebar(){
  // Product Upsell
    if(get_theme_mod('product_upsell','sidebar') == 'sidebar') {
        remove_action( 'woocommerce_after_single_product_summary' , 'woocommerce_upsell_display', 15);
        add_action('flatsome_before_product_sidebar','woocommerce_upsell_display', 2);
    }
    else if(get_theme_mod('product_upsell', 'sidebar') == 'disabled') {
        remove_action( 'woocommerce_after_single_product_summary' , 'woocommerce_upsell_display', 15);
    }
}
add_action('flatsome_before_product_sidebar','flatsome_product_upsell_sidebar', 1);

/* Add Share to product description */
if(!function_exists('flatsome_product_share')) {
  function flatsome_product_share() {
      echo do_shortcode('[share]');
  }
}
add_action( 'woocommerce_share', 'flatsome_product_share',  10 );


/* Remove Product Description Heading */
function flatsome_remove_product_description_heading($heading){

     return $heading = '';
}
add_filter('woocommerce_product_description_heading','flatsome_remove_product_description_heading');


/* Remove Additional Product Information Heading */
function flatsome_remove_product_information_heading($heading){
     return $heading = '';
}
add_filter('woocommerce_product_additional_information_heading','flatsome_remove_product_information_heading');

// Move Sale Flash to another hook
remove_action('woocommerce_before_single_product_summary', 'woocommerce_show_product_sale_flash',10);
add_action('flatsome_sale_flash','woocommerce_show_product_sale_flash',10);


// Add Product Video Button
if(!function_exists('flatsome_product_video_button')){
function flatsome_product_video_button(){
  global $wc_cpdf;
       // Add Product Video
      if($wc_cpdf->get_value(get_the_ID(), '_product_video')){ ?>
      <a class="button is-outline circle icon button product-video-popup tip-top" href="<?php echo trim( $wc_cpdf->get_value( get_the_ID(), '_product_video' ) ); ?>" title="<?php echo __( 'Video', 'flatsome' ); ?>">
            <?php echo get_flatsome_icon('icon-play'); ?>
      </a>
      <style>
       <?php
          // Set product video height
          $height = '900px';
              $width = '900px';
              $iframe_scale = '100%';
              $custom_size = $wc_cpdf->get_value(get_the_ID(), '_product_video_size');
              if($custom_size){
                $split = explode("x", $custom_size);

                $height = $split[0];
                $width = $split[1];

          $iframe_scale = ($width/$height*100).'%';
              }
              echo '.has-product-video .mfp-iframe-holder .mfp-content{max-width: '.$width.';}';
              echo '.has-product-video .mfp-iframe-scaler{padding-top: '.$iframe_scale.'}';
         ?>
      </style>
      <?php }
  }
}
add_action('flatsome_product_image_tools_bottom','flatsome_product_video_button', 1);


// Product Image Lightbox
function flatsome_product_lightbox_button(){
   if(get_theme_mod('product_lightbox', 'default') !== 'disabled') { ?>
    <a href="#product-zoom" class="zoom-button button is-outline circle icon tooltip hide-for-small" title="<?php echo __( 'Zoom', 'flatsome' ); ?>">
      <?php echo get_flatsome_icon('icon-expand'); ?>
    </a>
 <?php }
}
add_action('flatsome_product_image_tools_bottom','flatsome_product_lightbox_button', 2);


// Add Product Body Classes
function flatsome_product_body_classes( $classes ) {

    // Add Frame Class for Posts
    if(is_product() && get_theme_mod('product_lightbox', 'default') == 'flatsome'){
       $classes[] = 'has-lightbox';
    }

    return $classes;
}
add_filter( 'body_class', 'flatsome_product_body_classes' );


function flatsome_product_video_tab() {
	global $wc_cpdf;
	echo flatsome_apply_shortcode( 'ux_video', array(
		'url' => trim( $wc_cpdf->get_value( get_the_ID(), '_product_video' ) ),
	) );
}

// Custom Product Tabs
function flatsome_custom_product_tabs( $tabs ) {
  global $wc_cpdf;

    // Product video Tab
  if($wc_cpdf->get_value(get_the_ID(), '_product_video_placement') == 'tab'){
      $tabs['ux_video_tab'] = array(
        'title'   => __('Video','flatsome'),
        'priority'  => 10,
        'callback'  => 'flatsome_product_video_tab'
      );
  }

  // Adds the new tab
  if($wc_cpdf->get_value(get_the_ID(), '_custom_tab_title')){
    $tabs['ux_custom_tab'] = array(
      'title'   =>  $wc_cpdf->get_value(get_the_ID(), '_custom_tab_title'),
      'priority'  => 40,
      'callback'  => 'flatsome_custom_tab_content'
    );
  }

  // Custom Global Section
  if(get_theme_mod('tab_title')){
      $tabs['ux_global_tab'] = array(
        'title'   => get_theme_mod('tab_title'),
        'priority'  => 50,
        'callback'  => 'flatsome_global_tab_content'
      );
  }

  // Move review tab to the last position
  //$tabs['reviews']['priority'] = 100;

  return $tabs;
}

add_filter( 'woocommerce_product_tabs', 'flatsome_custom_product_tabs' );

function flatsome_custom_tab_content() {
  // The new tab content
  global $wc_cpdf;
  echo do_shortcode($wc_cpdf->get_value(get_the_ID(), '_custom_tab'));
}

function flatsome_global_tab_content() {
  // The new tab content
  echo do_shortcode(get_theme_mod('tab_content'));
}


function flatsome_product_tabs_classes(){
    $classes = array('nav','nav-uppercase');
    $tab_style = get_theme_mod('product_display','tabs');
    if($tab_style == 'tabs' || !$tab_style){
      $classes[] = 'nav-line';
    } else{
      $tab_style = str_replace("tabs_","",$tab_style);
      if($tab_style == 'vertical') $classes[] = 'nav-line';
      if($tab_style == 'normal') $classes[] = 'nav-tabs';
      $classes[] = 'nav-'.$tab_style;
    }

    $align = get_theme_mod('product_tabs_align','left');

    if($align){
        $classes[] = 'nav-'.$align;
    }

    echo implode(' ', $classes);
}


// Add Custom HTML Blocks
function flatsome_before_add_to_cart_html(){
    echo do_shortcode(get_theme_mod('html_before_add_to_cart'));
}
add_action( 'woocommerce_single_product_summary', 'flatsome_before_add_to_cart_html', 20);


// Add HTML after Add to Cart button
function flatsome_after_add_to_cart_html(){
    echo do_shortcode(get_theme_mod('html_after_add_to_cart'));
}
add_action( 'woocommerce_single_product_summary', 'flatsome_after_add_to_cart_html', 30);


// Add Custom HTML to top of product page
function flatsome_product_top_content(){
  global $wc_cpdf;
  if($wc_cpdf->get_value(get_the_ID(), '_top_content')){
    echo do_shortcode($wc_cpdf->get_value(get_the_ID(), '_top_content'));
  }
}

add_action('flatsome_before_product_page','flatsome_product_top_content', 10);

// Add Custom HTML to bottom of product page
function flatsome_product_bottom_content(){
  global $wc_cpdf;
  if($wc_cpdf->get_value(get_the_ID(), '_bottom_content')){
    echo do_shortcode($wc_cpdf->get_value(get_the_ID(), '_bottom_content'));
  }
}
add_action('flatsome_after_product_page','flatsome_product_bottom_content', 10);

function flatsome_related_products_args( $args ) {
  $args['posts_per_page'] = get_theme_mod('max_related_products', 8);
  return $args;
}
add_filter( 'woocommerce_output_related_products_args', 'flatsome_related_products_args' );

/**
 * Sticky add to cart template.
 *
 * @return void
 */
function flatsome_sticky_add_to_cart_template() {
	global $product;

	if (
		! is_product()
		|| ! $product
		|| ! $product->is_purchasable()
		|| ! get_theme_mod( 'product_sticky_cart', 0 )
		|| ! apply_filters( 'flatsome_sticky_add_to_cart_enabled', true, $product ) ) {
		return;
	}

	$classes         = array( 'sticky-add-to-cart' );
	$product_classes = implode( ' ', array_diff( wc_get_product_class( 'sticky-add-to-cart__product', $product ), [ 'product' ] ) );

	if ( get_theme_mod( 'content_color' ) === 'dark' ) {
		$classes[] = 'dark';
	}
	?>
	<!--Legacy wrapper-->
	<div class="sticky-add-to-cart-wrapper">
		<div class="<?php echo esc_attr( implode( ' ', $classes ) ); ?>" data-product-id="<?php echo esc_attr( $product->get_id() ); ?>">
			<div class="<?php echo esc_attr( $product_classes ); ?>">
				<?php
				echo woocommerce_get_product_thumbnail( 'woocommerce_gallery_thumbnail', array( // phpcs:ignore WordPress.Security.EscapeOutput
					'class' => 'attachment-woocommerce_gallery_thumbnail size-woocommerce_gallery_thumbnail sticky-add-to-cart-img',
				) );
				?>
				<div class="product-title-small hide-for-small"><strong><?php the_title(); ?></strong></div>
				<?php
				if ( $product->is_type( 'simple' ) ) :
					woocommerce_simple_add_to_cart();
				else :
					echo $product->get_price_html(); // phpcs:ignore WordPress.Security.EscapeOutput
					echo flatsome_apply_shortcode( 'button', array(
						'class' => 'sticky-add-to-cart-select-options-button mb-0 ml-half',
						'color' => 'secondary',
						'text'  => $product->is_type( 'variable' ) ? esc_html__( 'Select options', 'flatsome' ) : $product->single_add_to_cart_text(),
					) );
				endif;
				?>
			</div>
		</div>
	</div>
	<?php
}

add_action( 'wp_footer', 'flatsome_sticky_add_to_cart_template' );

/**
 * Remove title attribute on product gallery images.
 */
function flatsome_woocommerce_gallery_image_html_attachment_image_params( $params, $attachment_id, $image_size, $main_image ) {
	unset( $params['title'] );

	return $params;
}

add_filter( 'woocommerce_gallery_image_html_attachment_image_params', 'flatsome_woocommerce_gallery_image_html_attachment_image_params', 10, 4 );
CVARA – NHẬP KHẨU PHÁP – GIÚP PHÁT TRIỂN CHIỀU CAO VÀ PHÒNG CHỐNG LOÃNG XƯƠNG. - Giải pháp chăm sóc tại nhà Việt Nam

CVARA – NHẬP KHẨU PHÁP – GIÚP PHÁT TRIỂN CHIỀU CAO VÀ PHÒNG CHỐNG LOÃNG XƯƠNG.

390,000

CVARA – NHẬP KHẨU PHÁP – BỔ SUNG CALCI NANO VITAMIN D3 VÀ MK7 – GIÚP PHÁT TRIỂN CHIỀU CAO VÀ PHÒNG CHỐNG LOÃNG XƯƠNG.
CVARA – NHẬP KHẨU PHÁP – BỔ SUNG CALCI NANO VITAMIN D3 VÀ MK7 – GIÚP PHÁT TRIỂN CHIỀU CAO VÀ PHÒNG CHỐNG LOÃNG XƯƠNG

– Bổ sung Canxi nhằm hỗ trợ phát triển chiều cao cho thanh thiếu niên trong độ tuổi phát triển chiều cao, giúp xương chắc khỏe, phòng ngừa còi xương ở trẻ em

– Chống loãng xương, giúp phục hồi xương gãy, giảm đau lưng cho người lớn, ngăn chặn các hiện tượng thoái hóa, giòn xương do thiếu canxi trong máu, giúp cơ thể khỏe mạnh

– Giảm tình trạng viêm khớp, thoái hóa khớp. Cung cấp canxi, vitamin D3 cho phụ nữ có thai và cho con bú. Tăng cường và phát triển hệ xương ở thai nhi

– Giảm tê bì chân tay, chuột rút. Kết hợp hỗ trợ điều trị thiếu canxi huyết

CAM KẾT HÀNG CHÍNH HÃNG – GIÁ CẢ HỢP LÝ – TIẾT KIỆM 5-7% – GIAO HÀNG TOÀN QUỐC.