You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Magento 2可下载产品是否支持设置个人/商用价格下拉选项?

Magento 2可下载产品添加权限价格下拉框的实现方案

原生功能支持情况

Magento 2原生后台的可下载产品配置中,没有直接提供这种按使用权限(个人/商业)区分价格的下拉选项功能。原生可下载产品仅支持单一基础定价,或通过关联简单产品构建可配置产品,但无法直接在单个可下载产品上实现这种动态价格切换的下拉选择。

是否可通过插件实现?

完全可以通过自定义插件(模块)实现该需求,核心实现步骤如下:

  • 添加自定义产品属性:在后台创建一个下拉类型的产品属性(例如usage_rights),选项设置为「个人使用」「商业使用」,并配置该属性在前端产品页面显示。
  • 拦截价格计算逻辑:通过插件拦截Magento\Catalog\Model\Product\Type\Price::getFinalPrice方法,根据用户选中的权限选项动态返回对应价格($10或$100)。示例代码逻辑大致如下:
    public function afterGetFinalPrice(\Magento\Catalog\Model\Product\Type\Price $subject, $result, $qty = null)
    {
        $product = $subject->getProduct();
        $selectedRight = $product->getCustomOption('usage_rights')?->getValue();
        if ($selectedRight === 'commercial') {
            return 100;
        }
        return 10;
    }
    
  • 前端交互调整:修改产品页面模板,确保自定义属性的下拉选择框正确渲染;添加JS监听选项切换事件,实时更新页面显示的价格。
  • 订单与权限关联:确保订单中记录用户选择的权限类型,后续若需区分下载内容或权限验证,可基于该记录进行处理。

如果不想自行开发,也可以寻找第三方扩展,但自定义模块更能匹配个性化需求。

内容的提问来源于stack exchange,提问作者Serghei Topor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 14:42:47