Hãy tìm kiếm trước khi đặt câu hỏi, bạn sẽ tiết kiệm rất nhiều thời gian

Nhưng đừng ngại hỏi và đóng góp câu trả lời

Giúp mình cấu hình số sản phẩm hiển thị trên 1 dòng trong mỗi trang khác nhau...

0 phiếu
level-1 đã hỏi 21 Tháng 1, 2016 bởi vandanhqng Mới vào nghề (160 điểm)

Mình dùng theme storefront - child theme Deli ( free để học wp)

Mình muốn phân loại 2 kiểu hiển thị trên 2 loại trang khác nhau.

1. Trang Home cho hiển thị sản phẩm : Không có sidebar - 4 sản phẩm / 1 dòng

2. Các trang single, category,... có sidebar : 3 sản phẩm /1 dòng

Nhưng mặc định theme storefront trang nào nó cũng hiển thị 4 sản phẩm trên 1 dòng. Trong khi có sidebar thì nó bóp kích thước các sản phẩm lại nhìn rất là khó coi. Vì vậy mình muốn trang nào có sidebar thì nó hiển thị 3 sản phẩm /1 dòng thôi,

Bác nào giúp đỡ mình với ạ?

Cảm ơn!

Hình ảnh hiện tại nó như này :

1. Cái trang Home hiển thị 4 sản phẩm như này là hợp lý rồi

Trang Home

2. Nhưng cái trang Danh Mục có sidebar mình muốn nó hiển thị 3 sản phẩm lại cho kích thước dễ nhìn chút ạ

Category

Hỏi bạn bè:

1 câu trả lời

0 phiếu
level-12 level-power đã trả lời 21 Tháng 1, 2016 bởi hà đoàn ngọc Chuyên gia (21,580 điểm)

Bạn có thể dùng đoạn code sau thêm vào functions.php của child theme

function loop_columns() {
return 3; // 3 products per row
}
add_filter('loop_shop_columns', 'loop_columns', 999);

Để kiểm tra xem trang đó có sidebar hay không, bạn thêm đoạn check sau (giả sử tên sidebar là 'main'

 
function loop_columns() {
        if(is_active_sidebar('main')) return 3; // 3 products per row

        else return 4;
}
add_filter('loop_shop_columns', 'loop_columns', 999);

 
level-1 đã bình luận 21 Tháng 1, 2016 bởi vandanhqng Mới vào nghề (160 điểm)
Bạn cho mình hỏi thêm. Mình chỉ thêm đoạn đầu của bạn thì nó hiển thị đúng rồi, mình chưa thêm đoạn check sau của bạn vào nhưng sao nó hiển thị trang Home là 4 sản phẩm nhỉ?
level-12 level-power đã bình luận 21 Tháng 1, 2016 bởi hà đoàn ngọc Chuyên gia (21,580 điểm)
có thể trang home nó được gọi theo kiểu khác, không thông qua cái filter "loop_shop_columns" đó, nên bị fix giá trị 4
...