mediabeastnz / craft-commerce-back-in-stock
Craft Commerce的库存恢复插件,通过自动邮件通知订阅用户
Requires
- craftcms/cms: ^4.0.0
This package is auto-updated.
Last update: 2024-08-30 01:44:54 UTC
README
Craft Commerce 4的库存恢复插件
此插件允许任何人注册对缺货产品的兴趣。如果他们这样做,并且产品重新入库,系统将自动向所有感兴趣的电子邮件发送一封带有购买链接的电子邮件。
该插件附带一个基本、响应式电子邮件模板,但可以被自定义模板替换。电子邮件的主题行也可以通过插件的设置进行自定义。
安装
通过插件商店(搜索“库存恢复”)或通过composer。
"mediabeastnz/craft-commerce-back-in-stock": "^2.0.0"
要求
此插件需要Craft CMS 4.0.0或更高版本以及Craft Commerce 4.0或更高版本。
前端表单设置
此插件允许您将表单提交发送到特定操作,这将创建必要的记录。
您需要实现显示此表单的逻辑,如果产品缺货,但我已创建一个辅助模板以帮助您开始。
请使用类似hasStock
的函数来检查产品/变体是否缺货。
此表单需要3个字段。2个隐藏字段和1个可见字段,用户可以在此处输入他们的电子邮件。
<input type="hidden" name="action" value="craft-commerce-back-in-stock/base/register-interest"> <input type="hidden" name="variantId" value="{{ product.defaultVariant.id }}"> <input type="text" name="email" value="{{ currentUser.email }}">
如果您的网站允许用户更改变体(例如,选择),则variantId
字段的值可能需要是动态的。我建议一个简单的脚本来确保选定的变体被填充在这里。
如果您只有一个变体,则可以使用上面提供的示例。
您还可以包括一个options
值,以便在表单提交中保存额外的信息。这应该是一个JSON对象的形式。此输入完全是可选的。
{% set options = { title: 'Some Title', productAttribute: 'Some Value' } %} <input type="hidden" name="options" value="{{ options | json_encode }}">
您可以在电子邮件模板或主题行中使用这些变量,例如options.title
(如上例所示)。请确保在这样做时检查值是否存在!
如果您需要一些开始,请查看辅助模板(使用Tailwind构建)。
自动清除通知请求
如果您需要隐私,则希望启用“自动清除通知请求”。这将删除用户信息,一旦他们被通知,而不是保留在数据库中。