Nhiều khi chúng ta không muốn hiển thị chữ SALE khi sản phẩm đó có chương trình giảm giá. Mà thay vào đó sẽ hiển thị phần trăm (%) giảm giá của sản phẩm đó. vậy chúng ta sẽ làm gì?
Thay chữ sale bằng phần trăm giảm giá trong woocommerce
Nếu các bạn chưa có file sale-flash.php trong theme thì các bạn làm như sau. Tạo file sale-flash.php trong thư mục [your-theme]/woocommerce/loop/ và [your-theme]/woocommerce/single-product/ với nội dung file sale-flash.php như sau:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
| <?php/** * Product loop sale flash * Edit by levantoan.com * This template can be overridden by copying it to yourtheme/woocommerce/loop/sale-flash.php. * * HOWEVER, on occasion WooCommerce will need to update template files and you * (the theme developer) will need to copy the new files to your theme to * maintain compatibility. We try to do this as little as possible, but it does * happen. When this occurs the version of the template file will be bumped and * the readme will list any important changes. * * @author WooThemes * @package WooCommerce/Templates * @version 1.6.4 */if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly}global $post, $product;if ( $product->is_on_sale() ) : if ( ! $product->is_in_stock() ) return; $sale_price = get_post_meta( $product->get_id(), '_price', true); $regular_price = get_post_meta( $product->get_id(), '_regular_price', true); if (empty($regular_price) && $product->is_type( 'variable' )){ $available_variations = $product->get_available_variations(); $variation_id = $available_variations[0]['variation_id']; $variation = new WC_Product_Variation( $variation_id ); $regular_price = $variation ->regular_price; $sale_price = $variation ->sale_price; } $sale = ceil(( ($regular_price - $sale_price) / $regular_price ) * 100); if ( !empty( $regular_price ) && !empty( $sale_price ) && $regular_price > $sale_price ) : $R = floor((255*$sale)/100); $G = floor((255*(100-$sale))/100); $bg_style = 'background:none;background-color: rgb(' . $R . ',' . $G . ',0);'; echo apply_filters( 'woocommerce_sale_flash', '<span class="onsale" style="'. $bg_style .'">-' . $sale . '%</span>', $post, $product ); endif;endif; |
Chúc các bạn thành công ^^
Down load file sale-flash.php
Tham khảo: http://code.tutsplus.com/articles/customize-the-behavior-of-the-woocommerce-sale-flash–cms-22225

Không có nhận xét nào:
Write nhận xét