2

我一直在使用默认模板并尝试更改它的一些功能。在我的产品页面 (catalog/view/theme/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
            # ?????????????????????????????
        }
    }
?>

我想知道如何以允许用户的折扣显示价格。在我的产品中,在“折扣”选项卡下,我为我想要的客户群输入了折扣,并包含以下详细信息:

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

在“数据”选项卡下,我的价格设置为“7.00”。

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

有什么建议么 ?

4

1 回答 1

3

可能您将折扣特价混为一谈......如果您购买更多商品,折扣意味着销售,假设基本价格为 35 美元,但如果客户购买超过 10 件,您想给他们折扣假设一次购买 30 美元,如果他们一次购买超过 25 件商品,则为 20 美元,如果他们一次购买超过 100 件,则为 10 美元。

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

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

然后,这些折扣将仅适用于来自所需客户组的登录客户。

您希望设置的值是Special - 同样,特殊价格将立即提供给来自所需客户组的登录客户 - 因此不需要检查客户组...有关更多详细信息,请查看 SQL在模型类中的方法getProduct()(或getProducts())中查询catalog/model/catalog/product.php- 折扣和特价已经加入并针对登录客户的客户组进行选择。

保持原样:

<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>
于 2013-04-09T15:07:25.480 回答