SendGrid: как поместить форму для вставки в шаблонное письмо HTML при использовании SendGrid - PullRequest
0 голосов
/ 23 марта 2020

Я создаю приложение, которое будет отправлять шаблонное письмо HTML через SendGrid.

Теперь я хотел бы добавить форму Google для встраивания в шаблонное письмо HTML для отправки электронного письма. со встроенной формой Google.

У меня есть HTML шаблон в виде строки,

В основном это выглядит так:

const emailHTML = `
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
      <html data-editor-version="2" class="sg-campaigns" xmlns="http://www.w3.org/1999/xhtml">
         <head>
          .....
         </head>
         <body>
          ....
            <iframe src=“https://docs.google.com/forms/d/e/.../viewform?embedded=true” width=“640" height=“1493” frameborder=“0" marginheight=“0” marginwidth=“0">Link</iframe>

        </body>
      </html>
`

Тогда я передам это HTML переменная html для API SendGrid,

router.post('/send-email', (req, res) => {

    const { recipient, sender, topic, text, emailHTML } = req.body; 

    const msg = {
        to: recipient, 
        from: sender,
        subject: topic,
        text: text,
        html: emailHTML
    }

    sgMail.send(msg).then((msg) => { 
        res.json({ Message: msg })
    });
})

Я проверил и полученное письмо, но не увидел, что форма Google встроена в электронное письмо.

Как встроить Google Форма для HTML шаблона письма для отправки через SendGrid?

1 Ответ

0 голосов
/ 25 марта 2020

Вы не можете использовать <iframe> для встраивания формы Google (или любой другой формы).

Некоторые почтовые клиенты вообще не принимают формы или имеют ограниченную функциональность, если они отображаются вообще, но формы Google имеет встроенную функцию, доступную на их платформе.

По существу, в формах Google:

  1. Сделайте вашу форму
  2. Нажмите «Отправить»
  3. Вставить Ваш собственный адрес Gmail - это просто для получения кода
  4. В разделе «Отправить через» выберите «Электронная почта»
  5. Отметьте «Включить форму в электронное письмо»

См. https://www.maketecheasier.com/embed-google-forms-in-email/ для получения полных инструкций.

Теперь, чтобы получить действительный код для вставки в SendGrid, вы должны получить исходный код формы из этого электронного письма и вставить его в HTML для электронной почты SendGrid.

По существу,

Открытие электронной почты в Gmail Нажмите Дополнительно (стрелка вниз в правом верхнем углу) -> Показать оригинал Скопируйте соответствующий код

См. https://gillandrews.com/embed-a-survey-in-email-newsletter-google-forms/ для получения полных инструкций.

Я также добавил бы ссылку в Для тех, кто хотел заполнить форму непосредственно в Google, а не по электронной почте, потому что будут некоторые почтовые клиенты, которые не работают.

...