#1 Hướng Dẫn Code Chức Năng Flash Sale WooCommerce

29/10/2024
19 Phút đọc
275 Lượt xem
Đánh giá
4.3/5 - (100 bình chọn)

Trong bài viết này, chúng tôi sẽ hướng dẫn code chức năng flash sale WooCommerce hoàn chỉnh với các chức năng hiển thị slider sản phẩm, đếm ngược thời gian, đánh dấu sản phẩm Flash Sale trong giỏ hàng và áp dụng tự động giảm giá. Bài viết này không chỉ giải thích chi tiết từng hàm và từng lệnh mà còn cung cấp các mẹo tối ưu SEO để giúp nội dung và website của bạn dễ dàng lên top Google.

Hướng Dẫn Code Chức Năng Flash Sale WooCommerce
Hướng Dẫn Code Chức Năng Flash Sale WooCommerce

Các bạn có thể xem demo tại đây: Demo Flash Sale

1. Giới thiệu về Flash Sale WooCommerce

Flash Sale là hình thức giảm giá trong một khoảng thời gian ngắn, thường là vài giờ hoặc tối đa một ngày. Đây là một chiến lược cực kỳ hiệu quả trong việc kích cầu mua sắmtăng doanh thu cho cửa hàng trực tuyến, vì khách hàng sẽ có xu hướng quyết định nhanh hơn để không bỏ lỡ cơ hội mua hàng với giá ưu đãi.

Flash Sale WooCommerce
Flash Sale WooCommerce

Flash Sale thường được áp dụng vào các dịp lễ lớn hoặc các sự kiện đặc biệt như Black Friday, Cyber Monday, hoặc các chương trình khuyến mãi theo mùa. Bên cạnh việc tăng doanh thu, Flash Sale còn giúp:

  • Tăng tính tương tác với khách hàng: Thời gian ngắn và số lượng giới hạn khiến khách hàng quay lại trang nhiều hơn để không bỏ lỡ sản phẩm yêu thích.
  • Thúc đẩy quyết định mua hàng: Đếm ngược thời gian tạo cảm giác gấp gáp, thúc đẩy khách hàng ra quyết định nhanh chóng.
  • Quản lý hàng tồn kho hiệu quả: Giải phóng hàng tồn kho nhanh chóng, nhất là đối với các sản phẩm theo mùa hoặc sản phẩm đã cũ.

Lưu ý: Code này sử dụng các hàm của WordPress và WooCommerce nên bạn cần cài đặt cả hai nền tảng trước khi sử dụng.

2. Chi tiết về hướng dẫn code chức năng flash sale WooCommerce

Bước 1: Đầu tiên để code chức năng flash sale WooCommerce, chúng ta khai báo một hàm flash_sale_random_products_shortcode() để tạo slider sản phẩm Flash Sale.

Khởi tạo và lưu bộ nhớ đệm sản phẩm Flash Sale

  • get_transient(‘flash_sale_random_products’): Lấy dữ liệu sản phẩm Flash Sale từ bộ nhớ đệm của WordPress. Việc này giúp tránh truy vấn lại database, tăng tốc độ tải trang và cải thiện trải nghiệm người dùng. Nếu bộ nhớ đệm không tồn tại hoặc đã hết hạn, lệnh sẽ trả về false.

Tạo truy vấn sản phẩm Flash Sale

  • post_type: Xác định loại bài viết là sản phẩm (product).
  • posts_per_page: Giới hạn 15 sản phẩm trong Flash Sale.
  • orderby => ‘rand’: Hiển thị sản phẩm ngẫu nhiên để tạo tính mới mẻ cho khách hàng mỗi khi xem trang.

Truy vấn và lưu ID sản phẩm

Hiển thị thông báo khi không có sản phẩm Flash Sale

Lấy và hiển thị sản phẩm Flash Sale

Dưới đây là phần code để hiển thị sản phẩm, bao gồm thông tin về tên, giá, số lượng còn lại và các liên kết chi tiết.

  • foreach ($flash_sale_products as $product_id): Duyệt qua từng sản phẩm Flash Sale.
  • wc_get_product($product_id): Lấy đối tượng sản phẩm từ WooCommerce.

  • get_regular_price() và get_sale_price(): Lấy giá gốc và giá Flash Sale của sản phẩm.
  • discount_percentage: Tính toán phần trăm giảm giá và làm tròn để hiển thị trên giao diện.

3. Các Hàm Thiết Lập Giao Diện và Đếm Ngược Thời Gian Flash Sale

Để tạo đồng hồ đếm ngược cho Flash Sale, ta sử dụng mã JavaScript để đếm ngược từ thời điểm hiện tại đến nửa đêm (24:00). Tính năng này tạo sự khẩn cấp, thôi thúc khách hàng nhanh chóng ra quyết định mua hàng.

  • updateCountdown(): Cập nhật thời gian còn lại mỗi giây và hiển thị theo định dạng HH:MM:SS.

4. Cài Đặt và Tích Hợp Slick Slider

  • enqueue_slick_slider_assets(): Đưa CSS và JS của Slick Slider vào trang WooCommerce để slider sản phẩm hoạt động mượt mà. Đây là slider phổ biến để tạo trải nghiệm trượt sản phẩm chuyên nghiệp, hiển thị tối ưu trên cả PC và mobile.

5. Đánh Dấu Sản Phẩm Flash Sale Trong Session

Việc đánh dấu sản phẩm Flash Sale trong session giúp đảm bảo rằng sản phẩm vẫn sẽ được nhận ưu đãi ngay cả khi người dùng chuyển qua các trang khác hoặc tải lại trang trong quá trình mua sắm. Chúng ta sử dụng session để lưu lại các sản phẩm Flash Sale được thêm vào giỏ hàng.

  • session_start(): Kiểm tra xem session có tồn tại không, nếu không thì khởi tạo. Session cho phép lưu trữ thông tin tạm thời về sản phẩm trong Flash Sale khi người dùng duyệt trang.
  • $_SESSION[‘flash_sale_products’]: Biến session chứa danh sách sản phẩm có ưu đãi Flash Sale. Nếu chưa có, mảng session mới sẽ được khởi tạo.
  • $_SESSION[‘flash_sale_products’][] = $product_id: Thêm ID sản phẩm hiện tại vào danh sách các sản phẩm Flash Sale trong session.
  • $cart_item_data[‘flash_sale’] = true: Đánh dấu sản phẩm này trong dữ liệu giỏ hàng bằng cách thêm thuộc tính flash_sale. Dữ liệu này sẽ được sử dụng trong bước tiếp theo để áp dụng giảm giá cho sản phẩm khi tính tổng giỏ hàng.
  • add_filter(‘woocommerce_add_cart_item_data’, ‘set_flash_sale_flag’, 10, 2): Hook WooCommerce cho phép chỉnh sửa dữ liệu của sản phẩm trong giỏ hàng khi nó được thêm vào. Hàm set_flash_sale_flag được gọi khi người dùng thêm sản phẩm vào giỏ hàng, đảm bảo sản phẩm trong Flash Sale được đánh dấu.

6. Áp Dụng Giảm Giá Tự Động Trong Giỏ Hàng

Hàm apply_flash_sale_discount() sẽ kiểm tra từng sản phẩm trong giỏ hàng, nếu sản phẩm được đánh dấu là Flash Sale, nó sẽ tự động áp dụng giảm giá cho sản phẩm đó.

  • if (is_admin() && !defined(‘DOING_AJAX’)) return: Chỉ áp dụng hàm này cho frontend để tránh xung đột khi admin đang quản lý giỏ hàng hoặc sản phẩm.
  • $flash_sale_products_in_session: Lấy danh sách các sản phẩm Flash Sale từ session để kiểm tra các sản phẩm trong giỏ hàng xem có nằm trong danh sách Flash Sale không.
  • $cart->get_cart(): Lấy tất cả các sản phẩm trong giỏ hàng để lặp qua từng sản phẩm và kiểm tra điều kiện giảm giá.

Kiểm tra và áp dụng giảm giá cho sản phẩm

  • in_array($product_id, $flash_sale_products_in_session) || isset($cart_item[‘flash_sale’]): Kiểm tra xem sản phẩm có nằm trong danh sách Flash Sale (session) hoặc có cờ flash_sale trong dữ liệu giỏ hàng không. Nếu có, sản phẩm đủ điều kiện nhận giảm giá Flash Sale.
  • $product->is_on_sale(): Kiểm tra xem sản phẩm hiện có đang giảm giá không. Điều này giúp xác định liệu giá giảm thêm sẽ áp dụng từ sale_price hay từ regular_price.
  • $product->get_sale_price() – 100000: Áp dụng giảm giá bằng cách trừ đi 100,000 đơn vị từ giá giảm (sale_price) hoặc giá gốc (regular_price).
  • $cart_item[‘data’]->set_price($discount_price): Đặt giá mới sau khi giảm cho sản phẩm trong giỏ hàng. Điều này đảm bảo rằng sản phẩm trong Flash Sale được tính đúng giá khi thanh toán.
  • add_action(‘woocommerce_before_calculate_totals’, ‘apply_flash_sale_discount’): Hook này kích hoạt hàm apply_flash_sale_discount trước khi WooCommerce tính tổng giỏ hàng, đảm bảo sản phẩm Flash Sale được giảm giá chính xác.

7. Tạo slider sản phẩm Flash Sale bằng shortcode trong WooCommerce

Để hiển thị sản phẩm Flash Sale trên WooCommerce, bạn có thể sử dụng shortcode để tạo một slider sản phẩm, cho phép người dùng dễ dàng duyệt qua các sản phẩm đang giảm giá ngay trên trang chủ hoặc trang khuyến mãi.

Ví dụ shortcode cho slider sản phẩm giảm giá:

  • limit: Giới hạn số lượng sản phẩm trong slider.
  • columns: Số cột hiển thị sản phẩm.
  • on_sale="true": Chỉ hiển thị các sản phẩm đang giảm giá.
  • orderby="popularity"order="desc": Sắp xếp sản phẩm theo mức độ phổ biến giảm dần.

Ngoài ra, các bạn có thể tìm hiểu, tham khảo mua plugin tại đây: dominhhai

8. Tối Ưu SEO Cho Flash Sale WooCommerce

Để đưa Flash Sale WooCommerce của bạn lên top Google, dưới đây là một số kỹ thuật SEO mà bạn có thể áp dụng:

  1. Tối ưu URL và breadcrumb: Sử dụng từ khóa như flash-sale trong URL và tạo breadcrumb để giúp công cụ tìm kiếm dễ dàng xác định nội dung Flash Sale.
  2. Sử dụng từ khóa liên quan: Nhấn mạnh các từ khóa như “Flash Sale WooCommerce,” “plugin giảm giá WooCommerce,” trong tiêu đề và mô tả để tăng tính liên quan cho trang Flash Sale.
  3. Tối ưu thẻ ALT hình ảnh: Đảm bảo hình ảnh sản phẩm Flash Sale có thẻ ALT chứa từ khóa liên quan, giúp Google hiểu nội dung hình ảnh.
  4. Tạo nội dung hấp dẫn: Cung cấp thông tin chi tiết về sản phẩm, như tính năng nổi bật, giảm giá phần trăm, và thời gian kết thúc Flash Sale để thu hút khách hàng.
  5. Tích hợp mạng xã hội: Chia sẻ chiến dịch Flash Sale lên mạng xã hội để tăng lượng truy cập, giúp tăng uy tín và tạo đà cho SEO.

9. Lưu ý khi triển khai Flash Sale trên WooCommerce

Để Flash Sale đạt hiệu quả tốt nhất, hãy chú ý đến một số yếu tố quan trọng sau:

  • Quảng bá Flash Sale đúng cách: Sử dụng banner quảng cáo trên trang chủ, gửi email hoặc thông báo trên mạng xã hội để thông báo cho khách hàng về chương trình Flash Sale.
  • Tối ưu thời gian diễn ra Flash Sale: Thời gian Flash Sale nên được thiết lập vào những khung giờ cao điểm hoặc vào cuối tuần để đảm bảo nhiều người dùng truy cập và tham gia.
  • Theo dõi kết quả: Sau khi Flash Sale kết thúc, hãy theo dõi các chỉ số như lượng truy cập, tỷ lệ chuyển đổi và doanh thu để đánh giá hiệu quả chương trình. Bạn có thể điều chỉnh chiến lược dựa trên kết quả thu được.

Việc tạo Flash Sale WooCommerce với mã nguồn chi tiết này giúp bạn dễ dàng triển khai các chiến dịch giảm giá chuyên nghiệp và hiệu quả. Từng hàm, từng dòng code đều được thiết kế nhằm tối ưu hóa trải nghiệm người dùng và tự động hóa quá trình quản lý giảm giá. Kết hợp với các kỹ thuật SEO phù hợp, bạn hoàn toàn có thể đưa trang Flash Sale WooCommerce lên top Google, từ đó thu hút khách hàng và tăng doanh số một cách đáng kể. Hi vọng đoạn code chức năng flash sale WooCommerce sẽ giúp ích được bạn trong quá trình kinh doanh, phát triển, chúc các bạn thành công nhé. Dưới đây là đoạn code hoàn chỉnh, các bạn chỉ cần bỏ vào funtion.php là được nhé.

 

Thông báo chính thức: Muathemewpgiare chân thành mong muốn được đồng hành và hỗ trợ tốt nhất cho các khách hàng trong quá trình sử dụng giao diện WordPress. Vì vậy, khi mua những theme wordpress tại chúng tôi, chúng tôi cam kết hỗ trợ quý khách hàng hết sức có thể.

Chúng tôi hiểu rằng sự lựa chọn của quý khách là rất quan trọng. Việc mua source code tại chúng tôi không chỉ giúp đảm bảo chất lượng mà còn nhận được sự hỗ trợ tận tâm từ Muathemewpgiare. Chúng tôi rất mong quý khách cân nhắc kỹ, tránh những rủi ro không đáng có khi mua các source code không rõ nguồn gốc. Chúng tôi luôn sẵn sàng hỗ trợ và đồng hành cùng quý khách. Xin chân thành cảm ơn!

Để lại một bình luận