2012-10-18 29 views
5

Tôi có một sản phẩm có thể định cấu hình với hai kích thước và màu sắc thuộc tính có thể định cấu hình được. trong cấu hình. Những màu này cần phải được hiển thị khi có sẵn ở các kích cỡ khác nhau.Magento: Trên trang danh mục làm cách nào để hiển thị sản phẩm cho tất cả các tùy chọn màu trong một cấu hình

Khi khách hàng mở trang, họ sẽ thấy tất cả các màu mà tất cả các sản phẩm có sẵn, sau đó nếu chúng lọc theo kích thước, chúng sẽ thấy tất cả các màu của tất cả các sản phẩm có kích thước đó.

Có hai vấn đề với vấn đề này. 1. Hiển thị các sản phẩm và màu sắc thích hợp và 2. Cài đặt Điều hướng lớp để nó hiển thị tất cả các tùy chọn chính xác.

Tôi đã thử chỉ hiển thị các sản phẩm đơn giản cho mỗi màu và liên kết chúng với bố cục có thể định cấu hình của chúng nhưng sau đó điều hướng phân lớp là sai. Tôi cũng đã cố gắng tạo một sản phẩm có thể cấu hình hiển thị trong phần phụ trợ để nó được thêm vào bộ sưu tập sản phẩm và được sử dụng trong các bộ lọc, sau đó chỉ ẩn nó trên trang danh mục, loại công việc này nhưng Điều hướng lớp đếm tất cả các sản phẩm đơn giản . Một vấn đề khác là nếu tôi thử và sử dụng các sản phẩm đơn giản và chọn một trong mỗi màu thì các kích thước này cũng có kích thước cụ thể sao cho nếu người dùng thay đổi kích thước trong bộ lọc thì chúng sẽ không được hiển thị.

Có ai biết cách thực hiện việc này không?

+0

Bạn có muốn hiển thị tất cả các màu có sẵn cho mỗi sản phẩm có thể định cấu hình của bạn trên trang danh mục không? Nếu bạn chỉ có thể sử dụng mecanism của trang sản phẩm hiển thị thuộc tính cấu hình, ở điểm khác biệt bạn chỉ cần hiển thị thuộc tính đầu tiên mà không có bất kỳ lựa chọn xếp tầng javascript nào (điều này có thể chỉ hoạt động nếu "màu" là thuộc tính đầu tiên được hiển thị trên trang sản phẩm của bạn). Nếu đây là những gì bạn muốn làm, tôi có thể hướng dẫn bạn ... –

+0

'màu' là thuộc tính đầu tiên của sản phẩm có thể định cấu hình của tôi, nếu tôi đọc đúng, tôi sẽ có thể lấy mã tạo ra các thuộc tính sản phẩm thả xuống trên trang sản phẩm và sau đó sử dụng trang đó để hiển thị trên trang danh mục? Tôi đã có một cái nhìn tại wrapper.phtml mà tạo ra các tùy chọn cấu hình nhưng tôi không chắc chắn làm thế nào để sửa đổi điều này cho phù hợp với –

Trả lời

2

Trong list.phtml của bạn (hoặc bất kỳ mẫu mới bạn muốn tạo) (chỉnh sửa: hoặc tốt hơn: trong một Block) thử này:

$colors = array(); 
if ($_product->isConfigurable()) { 
    $allProducts = $_product->getTypeInstance(true)->getUsedProducts(null, $_product); 
    foreach ($allProducts as $subproduct) { 
     if ($subproduct->isSaleable()) { 
      $colors[$subproduct->getColor()] = $subproduct->getAttributeText('Color'); 
     } 
    } 
} 

và lặp trên $ màu sắc để xây dựng danh sách màu HTML tùy chỉnh của bạn

Các vấn đề liên quan