Magento 2: Cara mendapatkan harga Final & Harga asli semua jenis produk


11

Bagaimana saya bisa mendapatkan harga asli dan harga akhir dari produk tipe di bawah ini?

  1. Produk sederhana
  2. Produk yang dapat dikonfigurasi
  3. Bundel produk
  4. Produk grup

Untuk produk sederhana saya bisa mendapatkan harga dengan mudah menggunakan kode di bawah ini.

$finalPrice = $product->getFinalPrice();
$originalPrice = $product->getPrice();

Tetapi saya tidak bisa mendapatkan harga Asli dan harga Final untuk produk yang dapat Dikonfigurasi , produk Bundle , produk Grup

Apakah ada cara mudah untuk mendapatkan kedua harga dari semua jenis produk lainnya.


EDIT:

Saya mendapatkan harga Harga asli dan harga akhir dari produk yang dapat dikonfigurasi menggunakan kode di bawah ini. dan ambil referensi dari get-price-range -onfigurable-product-magento-2

$basePrice = $product->getPriceInfo()->getPrice('regular_price');

$regularPrice = $basePrice->getMinRegularAmount()->getValue();
$specialPrice = $product->getFinalPrice();

Bantuan apa pun akan dihargai! Terima kasih.


Anda bisa mendapatkan harga asli dan harga akhir di sini <? php $ objectManager = \ Magento \ Framework \ App \ ObjectManager :: getInstance (); $ productCollectionFactory = $ objectManager-> get ('\ Magento \ Catalog \ Model \ ResourceModel \ Product \ CollectionFactory'); $ collection = $ productCollectionFactory-> create (); $ collection-> addAttributeToSelect ('*'); $ collection-> addWebsiteFilter (); $ collection-> addMinimalPrice (); $ collection-> addFinalPrice (); $ collection-> addStoreFilter (); $ collection-> setVisibility ($ objectManager-> get ('\ Magento \ Catalog \ Model \ Product \ Visibility') -> getVisibleInSiteIds ()); ?> <? php foreach ($ collecti
Rakesh Donga

Sudahkah Anda memeriksa kode ini? apakah ini bekerja Itu tidak bekerja untuk saya.
Chirag Patel

ya kode ini bekerja untuk saya
Rakesh Donga

$_product->getSpecialPrice();tidak bekerja untuk saya
Chirag Patel

if($orgprice > $specialprice){ echo $_product->getSpecialPrice(); }
Rakesh Donga

Jawaban:


21

Anda bisa mendapatkan harga Reguler dan harga Final semua jenis produk menggunakan cara di bawah ini.

  1. Produk Sederhana
$regularPrice = $product->getPriceInfo()->getPrice('regular_price')->getValue();
$specialPrice = $product->getPriceInfo()->getPrice('special_price')->getValue();
  1. Produk yang dapat dikonfigurasi
if ($product->getTypeId() == 'configurable') {
      $basePrice = $product->getPriceInfo()->getPrice('regular_price');

      $regularPrice = $basePrice->getMinRegularAmount()->getValue();
      $specialPrice = $product->getFinalPrice();
}
  1. Bundel produk
if ($product->getTypeId() == 'bundle') {
      $regularPrice = $product->getPriceInfo()->getPrice('regular_price')->getMinimalPrice()->getValue();
      $specialPrice = $product->getPriceInfo()->getPrice('final_price')->getMinimalPrice()->getValue();            
}
  1. Produk grup
if ($product->getTypeId() == 'grouped') {
      $usedProds = $product->getTypeInstance(true)->getAssociatedProducts($product);            
      foreach ($usedProds as $child) {
          if ($child->getId() != $product->getId()) {
                $regularPrice += $child->getPrice();
                $specialPrice += $child->getFinalPrice();
          }
      }
}

Catatan: Dalam contoh di atas $ produk adalah produk saat ini.

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.