cara memeriksa apakah produk didiskon


13

Bagaimana saya bisa tahu jika produk saat ini mendapat diskon?

Saya menggunakan kode ini.

if($product->getFinalPrice() < $product->getPrice()){
   //had a discount
}

Tapi itu tidak berhasil.


Saya pikir Anda perlu harga khusus?
Keyul Shah

Jawaban:


13

Kode yang Anda sebutkan selalu bekerja untuk saya. Saya pikir itu tergantung bagaimana Anda mendapatkan $product.
Jika Anda melakukan ini, itu harus bekerja.

$product = Mage::getModel('catalog/product')->load($id);

jika Anda mendapatkan produk dari koleksi, dapatkan koleksi seperti ini:

$collection = Mage::getModel('catalog/product')->getCollection()
            ->addAttributeToSelect(Mage::getSingleton('catalog/config')->getProductAttributes())
            ->addMinimalPrice()
            ->addFinalPrice()
            ->addTaxPercents() //additional filters go here;

Sekarang Anda dapat mengulang koleksi dan melakukan pemeriksaan.

foreach ($collection as $product){
    if($product->getFinalPrice() < $product->getPrice()){
       //had a discount
    }
}

Metode ini mempertimbangkan diskon yang diberikan oleh harga khusus dan aturan harga katalog.

Informasi tambahan. Topik yang sedikit keluar tetapi berguna: Inilah cara Anda mendapatkan daftar produk yang memiliki diskon

$collection = Mage::getModel('catalog/product')->getCollection()
            ->addAttributeToSelect(Mage::getSingleton('catalog/config')->getProductAttributes())
            ->addMinimalPrice()
            ->addFinalPrice()
            ->addTaxPercents()
            ->addUrlRewrite();

Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($collection);
Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($collection);

$collection->getSelect()->where("`price_index`.price !=price_index.min_price");

5

Saya yakin Anda sedang mencari $product->getPrice()dan $product->getSpecialPrice().


2
Namun, ini tidak akan mendeteksi jika produk tersebut didiskon melalui aturan harga katalog.
ProxiBlue
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.