1

我有一家可配置产品的商店。在包含我所有产品的类别页面中,我想在价格之前添加文本。我怎样才能做到这一点?我使用现代主题。

4

4 回答 4

1

在目录/产品/list.phtm 中的 getPriceHtml($_product, true) ?> 之前添加您的文本

类似于以下内容:

  <?php echo "YOUR TEXT" ?>
    <?php echo $this->getPriceHtml($_product, true) ?>
于 2013-07-24T13:36:05.093 回答
0

你可以看看

app/design/frontend/default/yourtheme/template/catalog/product/price.phtml

如果您的主题没有文件使用,您可以查看

\app\design\frontend\base\default\template\catalog\product\price.phtml
Around line 189 you will find the following:

<span id=”product-price-<?php echo $_id ?>
<?php echo $this->getIdSuffix() ?>”&gt;

Just add the following above the line:

<?php echo $this->__(‘Your Text Goes Here:’) ?>
so that you have something like this:
<?php echo $this->__(‘Your Text Goes Here:’) ?>
<span class=”regular-price” id=”product-price-<?php echo $_id ?>
<?php echo $this->getIdSuffix() ?>”&gt;

Your text will be reflected before the price in both 
the catalog and the product page. 
于 2013-07-25T05:07:18.490 回答
0

在 magento 2中,您需要更改price-box.js放置在

/vendor/magento/module-catalog/view/base/web/js/price-box.js

确保将此 js 放在自定义主题文件夹中,并在附近的第 22 行进行更改 priceTemplate: '<span class="price"><%- data.formatted %></span>'

之后添加您的自定义文本<span class="price">

像这样的东西,

priceTemplate: '<span class="price">Price - <%- data.formatted %></span>'

完毕。

于 2018-04-18T05:43:39.040 回答
0

要在价格之前添加标签,您需要在自定义主题中覆盖 final_price.phtml 文件 -

核心文件路径 -

vendor/magento/module-catalog/view/base/templates/product/price/final_price.phtml

覆盖您的自定义主题 -

app/design/frontend/VendorName/ThemeName/Magento_Catalog/templates/product/price/final_price.phtml

更改代码如下 -

<?php
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

// @codingStandardsIgnoreFile

?>

<?php
/** @var \Magento\Catalog\Pricing\Render\FinalPriceBox $block */

/** ex: \Magento\Catalog\Pricing\Price\RegularPrice */
/** @var \Magento\Framework\Pricing\Price\PriceInterface $priceModel */
$priceModel = $block->getPriceType('regular_price');

/** ex: \Magento\Catalog\Pricing\Price\FinalPrice */
/** @var \Magento\Framework\Pricing\Price\PriceInterface $finalPriceModel */
$finalPriceModel = $block->getPriceType('final_price');
$idSuffix = $block->getIdSuffix() ? $block->getIdSuffix() : '';
$schema = ($block->getZone() == 'item_view') ? true : false;
?>
<?php if ($block->hasSpecialPrice()): ?>
    <span class="special-price">
        <?php /* @escapeNotVerified */ echo $block->renderAmount($finalPriceModel->getAmount(), [
            'display_label'     => __('Custom Label 1 : '),
            'price_id'          => $block->getPriceId('product-price-' . $idSuffix),
            'price_type'        => 'finalPrice',
            'include_container' => true,
            'schema' => $schema
        ]); ?>
    </span>
    <span class="old-price">
        <?php /* @escapeNotVerified */ echo $block->renderAmount($priceModel->getAmount(), [
            'display_label'     => __('Custom Label 2 : '),
            'price_id'          => $block->getPriceId('old-price-' . $idSuffix),
            'price_type'        => 'oldPrice',
            'include_container' => true,
            'skip_adjustments'  => true
        ]); ?>
    </span>
<?php else: ?>
    <?php /* @escapeNotVerified */ echo $block->renderAmount($finalPriceModel->getAmount(), [
        'display_label'     => __('Custom Label 3 : '),
        'price_id'          => $block->getPriceId('product-price-' . $idSuffix),
        'price_type'        => 'finalPrice',
        'include_container' => true,
        'schema' => $schema
    ]); ?>
<?php endif; ?>

<?php if ($block->showMinimalPrice()): ?>
    <?php if ($block->getUseLinkForAsLowAs()):?>
        <a href="<?= /* @escapeNotVerified */ $block->getSaleableItem()->getProductUrl() ?>" class="minimal-price-link">
            <?= /* @escapeNotVerified */ $block->renderAmountMinimal() ?>
        </a>
    <?php else:?>
        <span class="minimal-price-link">
            <?= /* @escapeNotVerified */ $block->renderAmountMinimal() ?>
        </span>
    <?php endif?>
<?php endif; ?>

在这里,我在下面的代码中更改了文本,并且在最后一个 else 条件下也添加了这个代码,因为它在 else 条件下不存在。

'display_label' => __('自定义标签 3 : '),

谢谢

于 2019-07-09T05:51:03.597 回答