2010-10-25 15 views
14

Tôi đã tích hợp dịch vụ email gửi đi với ứng dụng mẫu của tôi. & cũng có thể gửi email cho người dùng.Cách chuyển dữ liệu động vào mẫu email được mô tả trên ứng dụng web gửi đi? : - | Sendgrid

Nhưng cách chuyển dữ liệu động vào thiết kế mẫu Email trên ứng dụng web sendGrid? có cách nào để gửi dữ liệu động tới mẫu email được thiết kế trên sendgrid không?

cho ví dụ. Tôi đã thiết kế mẫu email chào mừng trên sendgrid. & Tôi muốn chuyển dữ liệu động vào mẫu này, tức là UserName, emailId, City, v.v. sử dụng mã java ? khi bất kỳ người dùng nào đã đăng ký với đơn đăng ký của tôi thì tôi muốn gửi email chào mừng tới người dùng đó. với thông tin của người dùng như UserName, emailId, Thành phố vv .. thông qua cơ sở dữ liệu của chúng tôi.

Việc cần làm? Làm thế nào để làm gì?

Trả lời

12

Thay vì tập trung vào thay thế qua ứng dụng Mẫu email (không thể), Bạn nên xem SMTPAPI. Bằng việc thêm một tiêu đề X-SMTPAPI trong thông điệp của bạn, bạn có thể

  1. kiểm soát các thiết lập của tài khoản SendGrid của bạn (ví dụ change filter settings on the fly)
  2. Send to lên đến 1000 địa chỉ người nhận trong một giao dịch SMTP (SMTPAPI To: Array)
  3. Thực hiện phối thư như các thay thế trong nội dung thư (SMTPAPI Sub: Associative Array)

Cuối cùng, giả sử bạn đang gửi email trực tiếp qua SMTP hoặc Web API của chúng tôi. Nếu bạn đang sử dụng tính năng bản tin của chúng tôi, bạn có thể hợp nhất thư bằng cách thay thế bằng cách sử dụng Custom Tags trong mẫu bản tin.

- Joe

SendGrid

+0

Có thể kết hợp các thẻ thay thế và Template Engine? – cprcrack

+0

Có. điều đó là có thể. – Darek

+0

Kiểm tra nhận xét của tôi tại đây http://stackoverflow.com/questions/32883246/adding-array-data-to-sendgrid-templates/33602379#33602379 –

1

Tôi nghĩ it is possible now, bằng cách thêm một chìa khóa substitutions trong các tùy chọn. Tôi cũng đã thêm khóa to vì khóa đó là bắt buộc.

$request_body = json_decode('{ 
    "personalizations": [ 
    { 
     "substitutions": { 
     "-first_name-": "John", 
     "-last_name-": "Doe" 
     }, 
     "to": [ 
     { 
      "email": "[email protected]", 
      "name": "John Doe" 
     } 
     ] 
    } 
    } 
}'); 
$response = $sg->client->mail()->send()->post($request_body); 
echo $response->statusCode(); 
echo $response->body(); 
print_r($response->headers()); 

Template trong Sendgrid trông như thế này:

Dear -first_name- -last_name-, 

Foo bar... 

Kind Regards 
Các vấn đề liên quan