如何为自定义文本设置价格?
How can I set a price for custom text?
如果客户在产品中添加自定义文本(添加产品时选项部分中的文本),是否可以添加价格?还是必须按产品组合添加(添加很多组合)?
使用输入收音机我无法控制用户将做什么,我无法将其设置为 "required" 因为它必须是一个自由选择。
{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}
实现此目标的最佳方法是拥有两种产品组合:
- 带有自定义文本 (+$0)
- 没有自定义文本 (+$1.00)
接下来,将一些自定义 Javascript 代码添加到您的产品页面(正确的方法是通过模块),这些代码将执行以下操作:
- 检查页面上是否存在自定义文本区域元素
- 检查是否为空
- 如果不是,则强制组合 ID 为正确的 ID("with customization" 版本)
就是这样。
这样,买家就不必 select 任何选项,他们只需填写自定义文本(如果愿意),价格就会在他们的购物车中自动调整。
希望对您有所帮助!
如果客户在产品中添加自定义文本(添加产品时选项部分中的文本),是否可以添加价格?还是必须按产品组合添加(添加很多组合)?
使用输入收音机我无法控制用户将做什么,我无法将其设置为 "required" 因为它必须是一个自由选择。
{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}
实现此目标的最佳方法是拥有两种产品组合:
- 带有自定义文本 (+$0)
- 没有自定义文本 (+$1.00)
接下来,将一些自定义 Javascript 代码添加到您的产品页面(正确的方法是通过模块),这些代码将执行以下操作:
- 检查页面上是否存在自定义文本区域元素
- 检查是否为空
- 如果不是,则强制组合 ID 为正确的 ID("with customization" 版本)
就是这样。
这样,买家就不必 select 任何选项,他们只需填写自定义文本(如果愿意),价格就会在他们的购物车中自动调整。
希望对您有所帮助!