HEX
Server: Apache/2
System: Linux sv.lamweb.online 4.18.0-553.22.1.el8_10.x86_64 #1 SMP Tue Sep 24 05:16:59 EDT 2024 x86_64
User: pnvtravel (1011)
PHP: 7.4.33
Disabled: NONE
Upload Files
File: /home/pnvtravel/domains/pnvtravel.com/public_html/wp-content/themes/duyanhweb/functions.php
<?php


// Code thêm của quý và thắng
function devvn_wc_custom_get_price_html( $price, $product ) {
    // Kiểm tra xem sản phẩm có giá hay không
    if ( ! $product->get_price() ) {
        $regular_price = $product->get_regular_price();

        // Nếu sản phẩm giảm giá và có giá gốc
        if ( $product->is_on_sale() && $regular_price ) {
            $display_price = wc_get_price_to_display( $product, array( 'qty' => 1, 'price' => $regular_price ) );
            return wc_format_price_range( $display_price, __( 'Free!', 'woocommerce' ) );
        }

        // Nếu không có giá và không phải sản phẩm giảm giá
        return '<span class="amount">' . __( 'Liên hệ', 'woocommerce' ) . '</span>';
    }

    // Trả về giá mặc định nếu có
    return $price;
}
add_filter( 'woocommerce_get_price_html', 'devvn_wc_custom_get_price_html', 10, 2 );

/*Sale price by devvn - levantoan.com*/
function devvn_price_html($product, $is_variation = false){
    ob_start();
 
    if($product->is_on_sale()):
        ?>
        <style>
            .devvn_single_price {
                background-color: #199bc42e;
                border: 1px dashed #199bc4;
                padding: 10px;
                border-radius: 3px;
                -moz-border-radius: 3px;
                -webkit-border-radius: 3px;
                margin: 0 0 10px;
                color: #000;
                display: block;
            }
 
            .devvn_single_price > span{
                display: block;
            }
 
            .devvn_single_price span.label {
                color: #333;
                font-weight: 400;
                font-size: 14px;
                padding: 0;
                margin: 0;
                float: left;
                width: 82px;
                text-align: left;
                line-height: 18px;
            }
 
            .devvn_single_price span.devvn_price .amount {
                font-size: 14px;
                font-weight: 700;
                color: #ff3a3a;
            }
 
            .devvn_single_price span.devvn_price del .amount, .devvn_single_price span.devvn_price del {
                font-size: 14px;
                color: #333;
                font-weight: 400;
            }
        </style>
    <?php
    endif;
 
    if($product->is_on_sale() && ($is_variation || $product->is_type('simple') || $product->is_type('external'))) {
        $sale_price = $product->get_sale_price();
        $regular_price = $product->get_regular_price();
        if($regular_price) {
            $sale = round(((floatval($regular_price) - floatval($sale_price)) / floatval($regular_price)) * 100);
            $sale_amout = $regular_price - $sale_price;
            ?>
            <span class="devvn_single_price">
                <span>
                    <span class="label">Giá:</span>
                    <span class="devvn_price"><?php echo wc_price($sale_price); ?></span>
                </span>
                <span>
                    <span class="label">Thị trường:</span>
                    <span class="devvn_price"><del><?php echo wc_price($regular_price); ?></del></span>
                </span>
                <span>
                    <span class="label">Tiết kiệm:</span>
                    <span class="devvn_price sale_amount"> <?php echo wc_price($sale_amout); ?> (<?php echo $sale; ?>%)</span>
                </span>
            </span>
            <?php
        }
    }elseif($product->is_on_sale() && $product->is_type('variable')){
        $prices = $product->get_variation_prices( true );
        if ( empty( $prices['price'] ) ) {
            echo apply_filters( 'woocommerce_variable_empty_price_html', '', $product );
        } else {
            $min_price     = current( $prices['price'] );
            $max_price     = end( $prices['price'] );
            $min_reg_price = current( $prices['regular_price'] );
            $max_reg_price = end( $prices['regular_price'] );
 
            if ( $min_price !== $max_price ) {
                echo wc_format_price_range( $min_price, $max_price ) . $product->get_price_suffix();
            } elseif ( $product->is_on_sale() && $min_reg_price === $max_reg_price ) {
                $sale = round(((floatval($max_reg_price) - floatval($min_price)) / floatval($max_reg_price)) * 100);
                $sale_amout = $max_reg_price - $min_price;
                ?>
                <span class="devvn_single_price">
                    <span>
                        <span class="label">Giá:</span>
                        <span class="devvn_price"><?php echo wc_price($min_price); ?></span>
                    </span>
                    <span>
                        <span class="label">Thị trường:</span>
                        <span class="devvn_price"><del><?php echo wc_price($max_reg_price); ?></del></span>
                    </span>
                    <span>
                        <span class="label">Tiết kiệm:</span>
                        <span class="devvn_price sale_amount"> <?php echo wc_price($sale_amout); ?> (<?php echo $sale; ?>%)</span>
                    </span>
                </span>
                <?php
            } else {
                echo wc_price( $min_price ) . $product->get_price_suffix();
            }
        }
 
    }else{ ?>
        <p class="<?php echo esc_attr( apply_filters( 'woocommerce_product_price_class', 'price' ) );?>"><?php echo $product->get_price_html(); ?></p>
    <?php }
    return ob_get_clean();
}
function woocommerce_template_single_price(){
    global $product;
    echo devvn_price_html($product);
}
 
add_filter('woocommerce_available_variation','devvn_woocommerce_available_variation', 10, 3);
function devvn_woocommerce_available_variation($args, $thisC, $variation){
    $old_price_html = $args['price_html'];
    if($old_price_html){
        $args['price_html'] = devvn_price_html($variation, true);
    }
    return $args;
}

// hook chitiet
function acky_hoo() { 
    global $product;
    $bo_nho_trong=get_field('bo_nho_trong');
    $camera_chinh=get_field('camera_chinh');
    $camera_phu=get_field('camera_phu');
    $cpu=get_field('cpu');
    $do_phan_giai_man_hinh=get_field('do_phan_giai_man_hinh');
    $dung_luong_pin=get_field('dung_luong_pin');
    $he_dieu_hanh=get_field('he_dieu_hanh');
    $kich_thuoc_man_hinh=get_field('kich_thuoc_man_hinh');
    $ram=get_field('ram');$the_sim=get_field('the_sim');
    $the_nho=get_field('the_nho');
    if(  $bo_nho_trong ) {
        echo '<p class="meta1 msp"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><path fill="#000" d="M6.572 7.057a.36.36 0 0 0-.505.05 7.66 7.66 0 0 0-1.742 4.85c.42 10.142 14.93 10.142 15.35 0a7.6 7.6 0 0 0-1.188-4.093 7.66 7.66 0 0 0-3.203-2.823A7.7 7.7 0 0 0 7.13 6.046a.357.357 0 0 0 .193.631.36.36 0 0 0 .263-.079c4.46-3.712 11.414-.435 11.37 5.359a6.93 6.93 0 0 1-2.04 4.899A6.98 6.98 0 0 1 12 18.888c-5.815.04-9.097-6.882-5.378-11.328a.356.356 0 0 0-.05-.503"></path><path fill="#000" d="M12 6.642a.36.36 0 0 0 .359-.357V5.88A.356.356 0 0 0 12 5.522a.36.36 0 0 0-.359.358v.405a.355.355 0 0 0 .222.33.4.4 0 0 0 .137.027M7.722 8.198a.36.36 0 0 0 .607-.254.36.36 0 0 0-.1-.251l-.288-.287a.36.36 0 0 0-.607.254c0 .094.035.184.1.252zM6.308 11.598h-.406a.36.36 0 0 0-.352.357.356.356 0 0 0 .352.357h.406a.36.36 0 0 0 .352-.357.357.357 0 0 0-.352-.357M7.434 16.503a.36.36 0 0 0 .507 0l.288-.286a.357.357 0 1 0-.507-.505l-.288.286a.357.357 0 0 0 0 .505M11.641 17.625v.405a.357.357 0 0 0 .359.35.36.36 0 0 0 .359-.35v-.405a.358.358 0 0 0-.61-.248.36.36 0 0 0-.108.248M15.771 16.217c.133.113.34.415.541.39a.362.362 0 0 0 .35-.426.36.36 0 0 0-.096-.183l-.288-.287a.36.36 0 0 0-.607.255c-.001.093.035.184.1.251M18.099 12.312a.36.36 0 0 0 .351-.357.357.357 0 0 0-.352-.357h-.406a.36.36 0 0 0-.352.357.357.357 0 0 0 .352.357zM16.025 8.303c.2.024.41-.279.54-.391a.357.357 0 0 0-.253-.61.36.36 0 0 0-.253.104l-.288.287a.36.36 0 0 0 .254.61"></path><path fill="#000" d="M20.502 6.349a.36.36 0 0 0 .507 0l.292-.29a2.38 2.38 0 0 0 0-3.37 2.46 2.46 0 0 0-1.903-.681 2.46 2.46 0 0 0-1.77.972.355.355 0 0 0-.001.505l1.184 1.18-.503.5c-3.42-3.278-9.215-3.274-12.623-.006l-.496-.494 1.184-1.18a.357.357 0 0 0 0-.505 2.45 2.45 0 0 0-1.771-.972 2.46 2.46 0 0 0-1.903.681 2.38 2.38 0 0 0 0 3.37c.153.127.33.409.546.395a.36.36 0 0 0 .254-.105l1.183-1.18.496.495C1.68 9.28 1.953 15.488 5.725 18.79l-.974 2.733a.356.356 0 0 0 .338.477h1.624a.36.36 0 0 0 .29-.147l1.09-1.492a9.27 9.27 0 0 0 7.81-.006l1.094 1.498a.36.36 0 0 0 .29.147h1.624a.362.362 0 0 0 .338-.477l-.978-2.744a9.2 9.2 0 0 0 2.999-6.08.356.356 0 0 0-.33-.384.36.36 0 0 0-.385.328c-1.28 10.829-16.743 10.234-17.141-.687 0-2.208.857-4.332 2.393-5.925a8.604 8.604 0 0 1 11.885-.476 8.54 8.54 0 0 1 2.863 5.715.357.357 0 0 0 .385.328.36.36 0 0 0 .33-.384 9.18 9.18 0 0 0-2.455-5.543l.503-.501zM3.244 5.591c-1.611-1.605.756-3.962 2.367-2.358zm15.158 15.694h-.934l-.92-1.26a9.4 9.4 0 0 0 1.136-.754zm-11.872 0h-.934l.715-2.005q.54.417 1.135.751zm11.895-18.09c1.632-1.534 3.92.821 2.329 2.396l-2.367-2.358z"></path><path fill="#000" d="M11.641 10.85a1.17 1.17 0 0 0-.75.748H8.77a.36.36 0 0 0-.35.357.357.357 0 0 0 .35.357h2.12a1.16 1.16 0 0 0 .837.777 1.173 1.173 0 0 0 1.4-.816 1.16 1.16 0 0 0-.77-1.424V7.905a.357.357 0 0 0-.358-.35.36.36 0 0 0-.359.35zM12 12.407a.455.455 0 0 1-.448-.453.45.45 0 0 1 .448-.453.455.455 0 0 1 .448.453.45.45 0 0 1-.448.453"></path></svg> Khởi hành:' . $bo_nho_trong .'</p>';
    }
    
	if($camera_phu) {
        echo '<p class="meta1 lkh1"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512" width="20" height="20"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->
                                    <path fill="#0047b3" d="M381 114.9L186.1 41.8c-16.7-6.2-35.2-5.3-51.1 2.7L89.1 67.4C78 73 77.2 88.5 87.6 95.2l146.9 94.5L136 240 77.8 214.1c-8.7-3.9-18.8-3.7-27.3 .6L18.3 230.8c-9.3 4.7-11.8 16.8-5 24.7l73.1 85.3c6.1 7.1 15 11.2 24.3 11.2l137.7 0c5 0 9.9-1.2 14.3-3.4L535.6 212.2c46.5-23.3 82.5-63.3 100.8-112C645.9 75 627.2 48 600.2 48l-57.4 0c-20.2 0-40.2 4.8-58.2 14L381 114.9zM0 480c0 17.7 14.3 32 32 32l576 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 448c-17.7 0-32 14.3-32 32z"></path></svg>' . $camera_phu .' </p>';
    } 

  
  
};      
add_action( 'woocommerce_after_shop_loop_item_title', 'acky_hoo', 10, 1 );