Tôi đang lấy một bộ sưu tập sản phẩm dựa trên danh mục hiện tại. Tôi cần bộ sưu tập này để chứa cả trong và ngoài sản phẩm chứng khoán và tôi cũng cần dữ liệu giá được hiển thị chính xác.
Cửa hàng của tôi được định cấu hình để lưu trữ giá sản phẩm đã bao gồm thuế và để hiển thị giá cả bao gồm và độc quyền ở mặt trước cửa hàng.
Mã để có được bộ sưu tập như sau:
$category = Mage::registry('current_category');
$_productCollection = Mage::getModel('catalog/product')->getCollection()
->addCategoryFilter($category)
->addAttributeToSelect(['sku', 'name', 'price'])
->addAttributeToFilter('status', 1)
->addAttributeToSort('jump_number', Varien_Data_Collection::SORT_ORDER_ASC);
Vấn đề với ở trên là khi tải khối giá bằng getPriceHtml()
phương pháp, cả giá bao gồm và giá độc quyền được hiển thị dưới dạng giá đã bao gồm.
Sau một số nghiên cứu, tôi thấy rằng việc thêm một addFinalPrice()
phương pháp vào bộ sưu tập của tôi mang lại cho tôi mức giá dự kiến - một mức giá bao gồm chính xác và độc quyền.
Tuy nhiên, nếu tôi bao gồm addFinalPrice()
phương thức, bộ sưu tập của tôi không còn chứa các sản phẩm chứng khoán nữa.
Có cách nào để trả lại dữ liệu giá chính xác và bộ sưu tập có chứa cả sản phẩm có thể bán được và hết hàng không?