2016-08-03 4 views
0

전자 메일 서식 파일을 구입하여 원하는대로 사용자 지정했지만 지금은 보내는 방법이 달라집니다.phpmailer로 전체 HTML 페이지 보내기

템플릿 파일은 미디어 쿼리와 일부 글꼴 설정이 포함 된 글꼴이 포함 된 전체 html 페이지와 맨 위에 스타일 시트 (실제로는 첨부 파일이 아닌 스티이 태그)입니다.

모두 보내시겠습니까? 헤더 태그 등을 포함합니까? 그것은 기본적으로 전체 HTML 페이지입니다.

내 emailscript의 일부가 현재 구축 얼마나 :

$mail->isHTML(true); 
$texts = 'html template'; 
$mail->msgHTML($texts); 

그러나 템플릿 파일을 작은 따옴표와 큰 따옴표의 전체 있기 때문에 나는 아직 내 자신의 코드를 테스트하지 않았습니다. 그래서 변수는 그것을 좋아하지 않는다. 나는 모든 작은 따옴표를 templatestring에서 큰 따옴표로 바꾸려고 시도했지만 내 글꼴은 더 ​​이상 작동하지 않는다. (나는이 사이트를 사용하여 원격으로 테스트했다 : https://putsmail.com/).

+0

PHP 사용 경험 수준은 어느 정도입니까? – hungerstar

+0

@hungerstar 전문가는 아니지만 대부분의 PHP를 이해할 수 있습니다. 나는 경험이있다. – twan

+2

@twan'$ html = file_get_contents ('your_template.html');'! –

답변

1

PHPMailer 자체는 HTML 콘텐츠와 관련하여 특별한 작업을 수행하지 않습니다 (단, msgHTML은 콘텐츠를 읽기 때문에 대략적인 일반 텍스트 버전이됩니다). 인라인 콘텐츠를 인용하는 데 문제가있는 것 같습니다.

$texts = <<<'EOT' 
html template 
EOT; 
$mail->msgHTML($texts); 

당신은 또한 외부 파일에 저장하고있는도, 그것을 필요로 할 때 그것을 읽을 수 있습니다 : 당신은 문제없이 따옴표의 모든 종류의 허용됩니다 nowdoc라고 인용이 다른 양식을 시도하는 것 같아서 인용문 피하기 :

$mail->msgHTML(file_get_contents('template.html')); 
+0

위대한 작품! 그러나 $ name (이름이 게시되는)과 같은 변수를 어떻게 사용할 수 있습니까? 나는 그것을 외부 파일에 echoeing이 작동하지 않을 것이라고 가정합니다. – twan

+0

대신 [heredoc] (http://php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc)을 사용하십시오. 변수 보간은 heredoc과 nowdoc의 주된 차이점입니다. 'include '를 사용하여 렌더링 된 외부 파일에 PHP 값을 넣을 수는 있지만, 그 시점에서 더 잘 처리 할 수있는 템플릿 언어를 살펴 보는 것이 더 나을 것입니다. – Synchro

+0

흠, 그 전에는 들어 본 적이없는, 이해하기 위해 그것에 대해 좀 더 읽어야합니다. – twan

관련 문제