Tạo trang “sản phẩm đã xem” cho flatsome đơn giản với code sau

Tạo trang "sản phẩm đã xem" cho flatsome đơn giản với code sau

Để lấy danh sách các sản phẩm mà người dùng đã xem khi truy cập vào website, chúng ta có thể sử dụng cookie để lưu trữ thông tin đó. Mỗi khi người dùng xem một sản phẩm, chúng ta sẽ lưu thông tin về sản phẩm đó vào cookie. Sau đó, để hiển thị danh sách sản phẩm đã xem, chúng ta có thể tạo một function để lấy thông tin từ cookie và hiển thị sản phẩm đó.

Dưới đây là một đoạn code PHP để lưu thông tin về sản phẩm đã xem vào cookie:

Code trên sẽ thêm sản phẩm đã xem vào cookie nếu người dùng xem một sản phẩm nào đó trên trang sản phẩm (post type ‘product’). Chúng ta giới hạn số lượng sản phẩm đã xem tối đa là 15, nếu đã vượt quá thì sẽ xoá sản phẩm cũ nhất.

Tiếp theo, chúng ta sẽ tạo function để lấy danh sách các sản phẩm đã xem từ cookie và hiển thị chúng dưới dạng danh sách sản phẩm. Function này có thể đặt trong file functions.php của theme hoặc trong một plugin riêng:

Trong đoạn code trên, chúng ta sử dụng hàm ob_start() để bắt đầu bộ đệm đầu ra và woocommerce_product_loop_start() để bắt đầu danh sách sản phẩm theo kiểu mặc định của WooCommerce. Tiếp theo, chúng ta lặp qua các sản phẩm đã xem và sử dụng wc_get_template_part() để lấy template của sản phẩm theo kiểu mặc định của WooCommerce. Cuối cùng, chúng ta sử dụng woocommerce_product_loop_end() để kết thúc danh sách sản phẩm và ob_get_clean() để trả về đầu ra.

Cuối cùng, để có thể chèn danh sách các sản phẩm đã xem vào bất cứ đâu trên trang web, chúng ta sử dụng shortcode. Đoạn sau sẽ giới thiệu cách tạo shortcode trong WordPress để hiển thị danh sách sản phẩm đã xem:

Sau khi thêm code trên vào functions.php, bạn có thể sử dụng shortcode [viewed_products] để hiển thị danh sách các sản phẩm đã xem ở bất cứ đâu trên trang web.

Ví dụ, để chèn danh sách sản phẩm vào trang sản phẩm, bạn có thể sử dụng shortcode sau:

Lưu ý rằng, đoạn code trên chỉ hiển thị danh sách sản phẩm đã xem của người dùng hiện tại. Nếu bạn muốn lưu trữ thông tin sản phẩm đã xem của người dùng trong một cơ sở dữ liệu riêng, bạn có thể sử dụng các plugin hoặc tạo các bảng dữ liệu tùy chỉnh để lưu trữ thông tin đó.

Đánh giá post

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *