如何在sendgrid模板中创建动态表行

时间:2017-01-27 06:23:48

标签: php

我想通过发票号和多笔交易向客户发送电子邮件。 但是我无法在sendgrid模板中生成多行。我已经在模板中发送了数组数据,但它没有生成多行。

我想知道sendgrid模板支持动态行生成。

我有一个模板,其中我有2列和多行,第一列是产品名称,即-product-第二列价格,即-price-。 我已经通过两列-product-和-price-的动态值,但是它显示在两个列数组中,而不是生成动态值。

以下是我使用的代码段:

$mail->invoiceTamplate('X-SMTPAPI', '{"filters":{"templates":{"settings":{ "enable":1,"template_id":"test"}}},"sub":{--product--":["'.$product.'"],"--price--":["'.$price'"]}}');

1 个答案:

答案 0 :(得分:0)

最后,我找到了解决这种情况的方法。当您在传递模板之前传递动态值为两个或三个您需要处理的任何其他内容时。

考试:我有一个模板,其中我有2列和多行,第一列是产品名称,即-product-第二列价格,即-price-。我已经通过了两列-product-和-price-的动态值。所以我们不需要在sendgird模板中传递两个值,我们只是在模板中传递一个值,我们将所有数据设置为字符串。

  <?php 
  $html = "<table><tr><th>product</th><th>price</th></tr>";
  foreach($datas as $data)
  {
  $html.="<tr><td>".$data['product']."</td><td>".$data['price']."</td></tr>"; 
  }
  $html .="</table>;

  $table = $html; 

  $mail->invoiceTamplate('X-SMTPAPI', '{"filters":{"templates":{"settings":{ "enable":1,"template_id":"test"}}},"sub":{"--table--":["'.$table'"]}}');
  ?>