如何为自定义文本设置价格?

问题描述 投票:0回答:2

如果客户在产品中添加自定义文本(添加产品时“选项”部分中的文本),是否可以添加价格?还是要我通过产品组合来添加(添加很多组合)?

使用输入无线电,我无法控制用户将做什么,也无法将其设置为“必需”,因为它必须是自由选择。

 {block name='product_customization_form'}
    <form method="post" action="{$product.url}" enctype="multipart/form-data">
      <ul class="clearfix">
        {foreach from=$customizations.fields item="field"}
          <li class="product-customization-item">
            <label> {$field.label}</label>
            {if $field.type == 'text'}
              <textarea placeholder="{l s='Your message here' d='Shop.Forms.Help'}" class="product-message" maxlength="250" {if $field.required} required {/if} name="{$field.input_name}"></textarea>
              <small class="float-xs-right">{l s='250 char. max' d='Shop.Forms.Help'}</small>
              {if $field.text !== ''}
                  <h6 class="customization-message">{l s='Your customization:' d='Shop.Theme.Catalog'}
                      <label>{$field.text}</label>
                  </h6>
              {/if}



          </li>
        {/foreach}
      </ul>
      <div class="clearfix">
        <button class="btn btn-primary float-xs-right" type="submit" name="submitCustomizedData">{l s='Save Customization' d='Shop.Theme.Actions'}</button>
      </div>
    </form>
  {/block}
prestashop prestashop-1.7 price
2个回答
1
投票

实现这一目标的最佳方法是拥有两种产品组合:

  • 带有自定义文本(+$0)
  • 没有自定义文本(+$1.00)

接下来,将一些自定义 Javascript 代码添加到您的产品页面(正确的方法是通过模块),这将执行以下操作:

  1. 检查页面上是否存在自定义文本区域元素
  2. 检查是否为空
  3. 如果不是,则强制组合 ID 为正确的 ID(“带自定义”版本)

就是这样。

这样,买家就不必选择任何选项,他们只需填写自定义文本(如果他们愿意),价格就会在购物车中自动调整。

我希望这有帮助!


0
投票

这里有一个指南https://www.prestashop.com/forums/topic/549666-guide-the-new-customization-system-in-prestashop-17/

您应该创建一个模块并按照指南中的说明挂钩它

© www.soinside.com 2019 - 2024. All rights reserved.