2011-03-17 40 views
7

quiero enviar algunos html en el cuerpo del correo electrónico, pero gmail no interpreta la etiqueta iframe con el video de youtube. ¿Es por violaciones de seguridad u otras razones?enviar iframe con youtube en el cuerpo del correo electrónico

aquí es mi código:

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(); 
+0

Gmail analiza sus correos electrónicos para enlaces de youtube y los incrusta. – Peeter

+0

la mayoría de los clientes de correo electrónico no permitirán una etiqueta iframe en un correo electrónico por razones de seguridad – jpea

Respuesta

7

Es a causa de la seguridad, que es la misma razón por la que no se puede poner javascript o algo externo distinto de imágenes en un correo electrónico, ya sea - que puede dar el correo electrónico demasiado " poder'. (Puedes poner cosas ahí, no se mostrarán). Lamentablemente, esto significa que no fiable soporte flash tampoco.

De hecho, la mayoría de los lectores de correo electrónico no analizan ni las etiquetas simples o CSS debido a la falta de soporte. De hecho, vuelvo a las tablas para asegurarme de que el correo electrónico sea coherente en todos los clientes de correo electrónico.

Su mejor/única opción es simplemente vincular al video me temo. Como se mencionó anteriormente, Gmail analizará los enlaces de Youtube y los integrará para las personas que lo tienen habilitado.

+6

No me parece nada triste que las personas no puedan enviarme correos electrónicos con Flash incrustado. – Quentin

+1

+1 en David Dorward - de acuerdo, nada triste – jpea

+0

Esto no es completamente cierto. He visto muchos correos electrónicos que llegan exactamente a mi casilla con imagen/video/diseño agradable, esquina central derecha, etc. Y mi jefe siempre me muestra esos ejemplos. (casi me gusta matarlo, porque es información anónima que nadie compartió). – YumYumYum

0

Muchos servidores de correo electrónico no permitirán esto por razones de seguridad. Pero puedes probar estas siguientes soluciones.

Solución 1:

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

Solución 2:

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

Sin embargo, en la solución 2 es necesario informar al receptor para eliminar el espacio de una etiqueta.

Cuestiones relacionadas