[WP] Fix giá 0₫ cho WooCommerce 3.1

Hôm nay, một người bạn của mình đã cập nhật WooCommerce của anh ấy lên bản mới nhất và phát hiện ra chữ Free! mà mình đã fix thành CALL đã biến thành 0₫ là thế là chúng ta có bài viết này. Thật ra, mình cũng muốn lưu lại và chia sẻ với anh em là chính.

Trong lúc tìm kiếm mình phát hiện gần như các bài viết chỉ na ná nhau và không giải quyết được vấn đề thực tế. Các đoạn code mình đã thử nghiệm chỉ có chuyển toàn bộ giá thành text hoặc ẩn đi toàn bộ giá. Cái mà mình tìm kiếm là chỉ có giá 0₫ là chuyển thành CALL và các giá bình thường thì nằm yên ở đó.

Cuối cùng mình cũng tìm ra:

function my_wc_custom_get_price_html( $price, $product ) {
	if ( $product->get_price() == 0 ) {
		if ( $product->is_on_sale() && $product->get_regular_price() ) {
			$regular_price = wc_get_price_to_display( $product, array( 'qty' => 1, 'price' => $product->get_regular_price() ) );

			$price = wc_format_price_range( $regular_price, __( 'Free!', 'woocommerce' ) );
		} else {
			$price = '<span class="amount">' . __( 'CALL-090xxx', 'woocommerce' ) . '</span>';
		}
	}

	return $price;
}

add_filter( 'woocommerce_get_price_html', 'my_wc_custom_get_price_html', 10, 2 );

Mình đã test thành công! Hy vọng bài viết này giúp được anh em.

2 thoughts on “[WP] Fix giá 0₫ cho WooCommerce 3.1”

    • Lỗi nhưng thế nào vậy bạn? Bạn đã khắc phục được chưa? mình cũng làm theo hướng dẫn không sync qua fb được. Ko biết ntn, bạn chia sẽ chút được ko?

Leave a Comment