Magento 2 hiển thị giá bình thường với giá đặc biệt trên minicart


9

Tôi có thể đặt giá Bình thường cùng với Giá đặc biệt trong khi đặt chức năng tùy chỉnh trong tệp lõi

vendor/magento/module-weee/Block/Item/Price/Renderer.php

public function getUnitItemPriceExclTax()
{
    $priceExclTax = $this->getItem()->getProduct()->getPrice();

    return $priceExclTax;
}

Và gọi chức năng này vào tập tin lõi, vendor/magento/module-weee/view/frontend/templates/checkout/cart/item/price/sidebar.phtml

Vì vậy, nhận được cả hai giá chính xác, nhưng tôi muốn ghi đè lên đó

vendor/magento/module-weee/Block/Item/Price/Renderer.php chặn trên mô-đun tùy chỉnh của tôi.

Tôi đã tạo di.xml với mã dưới đây:

<preference for="Magento\Weee\Block\Item\Price\Renderer" type="<namespace\<module_name>\Block\Item\Price\Renderer"/>

Và chỉ cần đặt getUnitItemPriceExclTax()chức năng đó trong khối đó.

nhập mô tả hình ảnh ở đây

Câu trả lời:


11

Bạn không cần ghi đè tệp Renderer.php trong lõi và bạn không bao giờ nên làm trong lõi. Bạn chỉ có thể thay đổi trong tệp sidebar.phtml và đặt các thay đổi của mình.

Bạn có thể nhận được giá từ phương pháp dưới đây:

$finalPrice = $item->getProduct()->getFinalPrice();
$normalPrice = $item->getProduct()->getPrice();

Sau khi nhận được các thay đổi ở trên, bạn có thể thực hiện mã bên dưới trong tệp mẫu của mình:

<?php if ($block->displayPriceWithWeeeDetails()): ?>
        <span class="minicart-tax-total">
    <?php else: ?>
        <span class="minicart-price">
    <?php endif; ?>
        <?php /* @escapeNotVerified */ echo $block->formatPrice($block->getUnitDisplayPriceExclTax()); ?> 
        </span>

    <?php if($normalPrice != $finalPrice){ ?>
    <span class="minicart-old-price">
            <?php /* @escapeNotVerified */ echo $block->formatPrice($normalPrice); ?>
    </span>
    <?php }   ?>

Tôi đã thực hiện các thay đổi trong Magento Phiên bản 2.1.1.


2
trong Magento2.1.8 Nó không còn được hiển thị trong sidebar.phtml. Tôi thấy từ nhà cung cấp / magento / mô-đun kiểm tra / xem / frontend / layout / checkout_cart_sidebar_item_price_Vnderers.xml, Mẫu này là nhà cung cấp / magento / mô-đun kiểm tra / view / frontend / web / template / minicart / item / price.html Bây giờ tôi làm không biết làm thế nào để có được giá xuất xứ.
user1506075
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.