Magento 2 показують звичайну ціну за спеціальною ціною на міні-картку


9

Я можу встановити Нормальну ціну разом із Спеціальною ціною, при цьому розміщуючи власну функцію в основному файлі

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

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

    return $priceExclTax;
}

І викликаючи цю функцію в основний файл, vendor/magento/module-weee/view/frontend/templates/checkout/cart/item/price/sidebar.phtml

Тож отримуючи обидві ціни правильно, але я хочу це перекрити

vendor/magento/module-weee/Block/Item/Price/Renderer.php блок на моєму користувальницькому модулі.

Я створив di.xml з кодом нижче:

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

І просто помістіть цю getUnitItemPriceExclTax()функцію в цей блок.

введіть тут опис зображення

Відповіді:


11

Вам не потрібно перезаписувати файл Renderer.php в ядрі, і ви ніколи не повинні робити в ядрі. Ви можете просто змінити файл Sidebar.phtml і встановити зміни.

Ви можете отримати ціну за методом нижче:

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

Отримавши вищезазначені зміни, ви можете зробити це нижче коду у файлі шаблону:

<?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 }   ?>

Я змінив версію Magento версії 2.1.1.


2
у Magento2.1.8 Більше не відображається в sidebar.phtml. Я бачу від постачальника / magento / module-checkout / view / frontend / layout / checkout_cart_sidebar_item_price_renderers.xml, Шаблон - постачальник / magento / module-checkout / view / frontend / web / template / minicart / item / price.html Зараз я це роблю не знаю, як отримати ціну походження
user1506075
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.