Saya mencoba mendapatkan total kutipan keranjang di minicart.phtml, tetapi saya tidak beruntung. Saya menyuntikkan Magento \ Checkout \ Model \ Cart.
Ini kode saya:
$this->cart = $cart;
$cartQuote= $this->cart->getQuote()->getData();
echo $cartQuote['base_grand_total'];
Setelah saya menjalankan kode itu, minicart rusak dan hilang sama sekali dari frontend.
Terima kasih!
Jawaban:
Baris di bawah ini adalah workig untuk semua kasus jika cache diaktifkan berfungsi dengan baik,
Untuk mendapatkan nilai grandtotal, tarif pengiriman,
Anda bisa mendapatkan GrandTotal, subtotal dan tarif pengiriman untuk penawaran saat ini menggunakan kode di bawah ini dalam file minicart.phtml, Tetapi ketika cache diaktifkan pada saat itu tidak memperbarui harga ketika Anda menambahkan produk baru menggunakan metode di bawah ini.
sumber
Kami memiliki pertanyaan serupa dari seorang klien. di mana ia ingin menunjukkan "[kuantitas] item [subtotal]" di blok kereta gaya daripada ikon kereta bawaan di minicart.
Kami menemukan pertanyaan ini di sini tetapi tidak menyukai jawaban di mana kami perlu memperluas
\Magento\Checkout\CustomerData\Cart
kelas hanya untuk membuat html dengan benarini adalah kode cara kami memperbaikinya dalam templat:
Sepertinya Anda juga dapat menggunakan pengikatan data knockout.js standar dan tidak perlu menggunakan metode komentar KO gila 2. ini memecahkan masalah di mana rendering
getCartParam('subtotal')
dengan metode html di mana biasanya akan mencetak subtotal salah karena<span ="price"></span>
tagsumber
Kode di atas ini akan berfungsi pada pemuatan halaman, tetapi tidak akan berfungsi dengan magento2 ajax add to cart karena menggunakan Knockout JS sekarang.
Untuk itu Anda harus menggunakan -
Di sini saya telah menambahkan parameter keranjang baru " subtotal_value " sebagai " subtotal " akan mengembalikan rentang harga kontainer dan akan ditampilkan sebagai TEXT menggunakan KO. Di sini Anda harus menggunakan " Instance Manager Instance " secara langsung, karena Anda tidak dapat menyuntikkan dependensi ke " __construct ".
CATATAN, ada beberapa pengecualian di mana kita mungkin perlu menggunakan " Instance Object Manager " secara langsung. Dalam kasus kami ini adalah kompatibilitas mundur konstruktor.
Pengecualian ObjectManager
Selanjutnya, salin tema default magento " /art/minicart.phtml " ke tema Anda dan tambahkan kode KO.
ko teks: getCartParam ('subtotal_value')
sumber
Tentukan blok di tata letak Anda di mana kelas ditandai sebagai "Magento \ Checkout \ Block \ Cart \ Total"
Kemudian dalam .phtml Anda dapat memiliki kode di bawah ini
Output yang Diharapkan
sumber