отправить iframe с YouTube в теле письма - PullRequest
7 голосов
/ 17 марта 2011

Я хочу отправить html в теле письма, но gmail не интерпретирует тег iframe с видео на YouTube.Это из-за нарушений безопасности или по другим причинам?

вот мой код:

    this->load->library('email');       
    $config['mailtype'] = 'html';
    $config['wordwrap'] = TRUE;
    $this->email->initialize($config);
        $this->email->from('<email>', 'Alega');
        $this->email->to('<email>'); 
        $this->email->subject('Email Test');
        $this->email->message('<iframe title="YouTube video player" width="480" height="390" src="<url>" frameborder="0" allowfullscreen></iframe>');   

            $this->email->send();

Ответы [ 2 ]

7 голосов
/ 17 марта 2011

Это из-за безопасности, это та же самая причина, по которой вы не можете поместить в электронное письмо javascript или что-то внешнее, кроме изображений - это может придать электронному письму слишком много «силы».(Вы можете положить туда вещи, они не будут отображаться).К сожалению, это означает, что нет надежной поддержки флеш-памяти.

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

Ваш лучший / единственный вариант - просто бояться ссылки на видео.Как упоминалось выше, Gmail будет анализировать ссылки на Youtube и фактически вставлять их людям, у которых эта функция включена.

0 голосов
/ 06 ноября 2017

Многие почтовые серверы не позволяют этого по соображениям безопасности. Но вы можете попробовать следующие решения.

Решение 1:

    $var = html_escape('<iframe title="YouTube video player" width="480" height="390" src="<url>" frameborder="0" allowfullscreen></iframe>');
    $this->email->message($var);

Решение 2:

$this->email->message('<&nbs;iframe title="YouTube video player" width="480" height="390" src="<url>" frameborder="0" allowfullscreen><&nbs;/iframe>');

Тем не менее, в решении 2 вам нужно сообщить получателю удалить пробел из тега.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...