OpenCart - 折扣后显示价格

时间:2013-04-09 13:40:38

标签: opencart product discount

我一直在使用默认模板并尝试更改其中的一些功能。在我的产品页面(目录/视图/主题/ mytheme / template / product / product.tpl)上,我想在应用折扣后显示价格,具体取决于我的客户群。

我知道我没有使用最佳解决方案来查询我的用户组,因为我有硬编码信息,但这是看起来如何:

<?php
    $customer_group_id = $this->customer->getCustomerGroupId();

    if (is_null($customer_group_id))
    {
        // not logged in
        // show full price
        echo $price;
    }
    else
    {
        if ($customer_group_id == "1")
        {
            // customer group used with full price
            echo $price;
        }
        else
        {
            // customer group with discount
            # ?????????????????????????????
        }
    }
?>

我想知道如何以允许给用户的折扣显示价格。在我的产品中,根据&#34;折扣&#34;选项卡,我已根据以下详细信息为我所需的客户群输入折扣:

Quantity : 0
Priority : 0
Price : 5.00
Date Start : 2000-01-01
Date End : 2050-12-31

在&#34;数据&#34;选项卡,我的价格设置为&#34; 7.00&#34;。

我尝试了几位代码但没有显示折扣代码。但是,如果我的用户未登录或以其他用户组中的用户身份登录,我会显示全价。

有什么建议吗?

1 个答案:

答案 0 :(得分:3)

可能您正在混淆折扣特殊价格...如果您购买更多商品,折扣是指促销,让我们说基本价格是35美元,但是如果他们一次购买超过10件,你可以给予客户折扣,如果他们一次购买超过25件,你想要20美元;如果他们一次购买超过100件,你想要10美元。< / p>

然后你会设置这样的折扣:

Customer Group | Quantity | Priority | Price | Start | End
pick one       | 10       | 1        | 35    |       |
pick one       | 25       | 2        | 20    |       |
pick one       | 100      | 3        | 10    |       |

这些折扣仅适用于来自所需客户群的登录客户。

您希望设置的值是特殊 - 再次,特殊价格将立即从所需客户组的登录客户处获得 - 因此不检查客户组是需要...有关详细信息,请检查getProduct()模型类中方法getProducts()(或catalog/model/catalog/product.php)中的SQL查询 - 已经加入并选择了有关客户组的折扣和特价登录客户。

保持原样:

<div class="price"><?php echo $text_price; ?>
    <?php if (!$special) { ?>
    <?php echo $price; ?>
    <?php } else { ?>
    <span class="price-old"><?php echo $price; ?></span> <span class="price-new"><?php echo $special; ?></span>
    <?php } ?>
...

如果您需要更改订单(特价首先),请将相应的行更改为

<span class="price-new"><?php echo $special; ?></span> <span class="price-old"><?php echo $price; ?></span>