我正在使用产品插件的重力。发送邮件时,Woo-commerce将Gform数据嵌入产品中并发送给客户和管理员。我也想将这封电子邮件发送给主持人,但不想向他显示价格和折扣。因为我正在使用WP预先通知,其中包含一个电子邮件模板。我可以从中删除TOTAL价格字段,但无法从重力表单数据中删除总价。它显示产品价格和产品名称。例如
Selected City: XXX
Selected Product : Packets ($10.00)
Quantity : 1
Tax : 5% = $0.05
Total : $9.95
Mode of Payment: Credit Card
所有这些数据都来自数组" gravity_form_history"。我通过覆盖数组索引手动隐藏价格。但, 我的主管要我提供一般解决方案。如果他使用gforms添加更多产品,那么他只需要在某处输入字段名称,以隐藏/删除该字段的价格/值,而不是标签。他不想玩代码。
有没有解决方案?
答案 0 :(得分:0)
解决方案如果有人需要它。
我使用了woocommerce" $ item_meta" array tp capture gform data。
web.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent redirect = new Intent(context,New.class);
context.startActivity(redirect);
}
});
除了if条件中提到的那些之外,这将返回gform中包含值的字段。 preg_replace用于从价值中删除产品价格,折扣价格和百分比,税金(如果适用)。例如它会改变
foreach ($item_meta->meta as $arraydata => $arrayvalue)
{
if ( $arraydata == "_qty" ||
$arraydata == "_tax_class" ||
$arraydata == "_product_id" ||
$arraydata == "_gravity_forms_history" ||
// all values above are general and will be there in default customer email.
// below arraydata is from gravity form
$arraydata == "Total" ||
$arraydata == "Delivery charges")
{}
else
{
$string = preg_replace("/\d+\.\d+/", "", $arrayvalue[0]);
$string = str_replace('($)', '', $string);
// printing Filds : Value
echo $arraydata.": ".$string."<br>";
}
}
到
Selected Product : Headphones ($25.45), Mouse ($15.00), Keyboard(with backlight) ($45.00)
Total Price : $85.45
Payment Gateway: Credit Card
发生这一切的文件将通过Wordpress Advance Notification插件向特定的电子邮件地址发送电子邮件。