Trang chủ Lập trình PHP - MySQL Thêm tùy chọn hiển thị tất cả sản phẩm trong WooCommerce

Thêm tùy chọn hiển thị tất cả sản phẩm trong WooCommerce

Có một yêu cầu của khách hàng yêu cầu thêm tùy chọn hiển thị tất cả các sản phẩm (mặc định các sản phẩm sẽ được chia trang).

show-all-woocommerce-1

Bắt đầu tìm kiếm giải pháp và thấy rằng WooCommerce có một đoạn shortcode hỗ trở người dùng tùy biến lại hiển thị của tất cả sản phẩm của một thư mục (category). Shortcode đó có dạng như sau:

Trong đó appliances là slug của tên thư mục. Bạn có thể tùy biến với các tham biến nữa là:

  • per_page: số sản phẩm trên 1 trang (cho việc chia trang)
  • columns: số cột hiển thị (số phẩm trên 1 hàng)
  • orderby: biến dùng sắp xếp (tên, giá,…)
  • order: cách sắp xếp (a-z, z-a, cao đến thấp, thấp đến cao)

Bạn có thể tìm hiểu thêm thông tin về shortcode này cũng như các shortcode mặc định của WooCommerce tại: https://docs.woothemes.com/document/woocommerce-shortcodes/

Ý tưởng giải quyết: Vậy là khỏi phải viết thêm mã để giải quyết mà sẽ tận dụng shortcode này với tham biến per_page sẽ đây lên cao ví dụ như: 1000. Giờ mình chỉ phải viết code để nhận diện lúc nào chạy shortcode này lúc nào chạy code mặc định.

Mình giả dụ sẽ dùng tham số url (URL parameter) là show=all để nhận diện cho tùy chọn hiển thị hết tất cả các sản phẩm và mình sẽ code lại như sau:

Nếu bạn sử dụng theme có hỗ trợ woocommerce thì bạn tìm trong tập tin /themes/tên-theme/woocommerce/archive-product.php nếu theme chưa hỗ trợ (dùng theme) mặc định của WooCommerce thì bạn tìm trong tập tin /plugins/woocommerce/templates/archive-product.php. Tuy nhiên mình khuyên bạn là nên tạo thêm WooCommerce trong theme của bạn vì việc chỉnh sửa này có thể bị ảnh hưởng nếu WooCommerce update lên phiên bản mới.

Bạn tìm đến dòng:

và thêm vào dòng lệnh PHP:

Dòng lệnh này sẽ giúp bạn lấy thông tin thư mục hiện tại. Giờ bạn sẽ dùng lệnh IF để kiểm tra có tham biến show=all hay không. Nếu không thì chạy lệnh cũ. Thường lệnh này là 1 vòng lặp while có dạng như sau:

nếu tồn tại tham biến show=all thì sẽ chạy mã:

Mình nghĩ các bạn có thể viết lại thêm IF như mình mô tả ở trên.

show-all-woocommerce-2

Thật ra cách này sẽ khó để thực hiện thêm các thao tác như lọc (filter), sắp xếp (sort) nên nó không là giải pháp tối ưu nhất nên nếu bạn nào có giải pháp code nào khác có thể chia sẻ. Nếu có thời gian rãnh mình sẽ viết lại hướng dẫn cho giải pháp này với tính năng infinite scroll và đương nhiên là đã giải quyết hết tất cả các vấn đề. Các bạn nhớ đón xem

Chúc các bạn thành công.

Huỳnh Mai Anh Kiệt

- Advertisement -
Huỳnh Mai Anh Kiệthttps://anhkiet.biz
Anh là một người đam mê công nghệ. Hiện tại anh là một lập trình viên cho Hura Apps - một startup nhỏ về công nghệ tại Quy Nhơn.

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây

BÀI VIẾT MỚI

Hướng dẫn tải video ngắn Facebook Reel miễn phí

Facebook Reels là tính năng video ngắn mới của Facebook. Nếu bạn muốn tải những video ngắn này của mọi người thì bạn có...

Lập Trình Viên 25 Tuổi Kiếm Được $30.000 Mỗi Tháng Từ Các Ứng Dụng Shopify

Mat De Sousa là một doanh nhân Pháp, anh là người đứng sau 2 ứng dụng Shopify là Wide Bundles và WideReview do chính...

Lần đầu nhận quà từ Shopify

Hura Apps là 1 trong những đối tác của Shopify được vinh dự Shopify chọn tham gia chương trình (Huấn luyện Thương mại) Commerce...

Một số ưu đãi của Shopify cho người dùng đăng ký mới

Shopify chỉ cho phép người dùng mới 14 ngày dùng thử miễn phí. Nếu bạn cảm thấy khoảng thời gian này là không đủ...

Trang web hỗ trợ tìm kiếm trên Facebook

Facebook là mạng xã hội lớn nhất hiện nay. Thông tin được người dùng chia sẻ trên mạng xã hội này là vô cùng...

BẠN XEM CHƯA

Dễ dàng tải theme và plugin đang sử dụng với WP Downloader

Cách duy nhất để tải theme hoặc plugin đang sử dụng cho trang web đang chạy bằng Wordpress là truy cập vào trang quản...

MyFFVideoConverter – Công cụ biên tập video miễn phí mà đa năng

Tuy nhiên MyFFVideoConverter (MFVC) là một trường hợp ngoại lệ. Với MFVC bạn có thể thực hiện nhiều thao tác biên tập video như:...

Tải ứng dụng từ Google Play về máy tính với định dạng APK

Google Play là kho ứng dụng của Google dành cho điện thoại Android. Khi truy cập vào Google Play (https://play.google.com) bạn chỉ cần tìm...

Mang nút lệnh canh đều 2 biên trở lại trên thanh công cụ soạn thảo của WordPress

Kể từ phiên bản 4.5 thì WordPress không còn nút lệnh canh đều 2 biên cho văn bạn trên thanh công cụ hỗ trợ...

Lẩu cua Huệ Loan – Phước Sơn – Tuy Phước

Lẩu cua Huệ Loan là 1 quán đặc sản biển ở thôn Vinh Quang 2, xã Phước Sơn, huyện Tuy Phước. Lẩu cua là...