2017-01-14 8 views
1

제 목적은 Twig 템플릿을 렌더링하고 결과 HTML을 API를 통해 Mailchimp로 보내어 전송하는 것입니다.Twig 템플릿에서 path()를 벗어나지 않는 방법

내 현재 프로세스 :

1) 나뭇 가지 템플릿 email.html.twig을 만들 수 있습니다.

2) $html = $this->renderView('MyBundle:email.html.twig');

3) sendHtmlViaApi($html);

문제 : 내가 *|VARIABLE|* 수있는 메일 침프 병합 태그 문자열을 포함하는 URL이 필요합니다. 나는 {{ path('my_route', {variable : '*|VARIABLE|*'}) }}으로 그렇게한다. 원하는 결과 : /myroute/*|VARIABLE|*. 결과는 /myroute/*%7CVARIABLE%7C*입니다.

이미 시도하고 실패 방법 :

1)를 사용하여 {% autoescape %}

2) Symfony2 Twig stop escaping path

+0

메일 함이 이스케이프 된 URL을 처리하지 않는다고 확신합니까? 도망 칠 이유가 있습니다. 잘못된 URL을 생성하는 것이 이상하게 보입니다. – Cerad

답변

0

에서 새로운 url_decode 필터와 |raw

3) 나뭇 가지 확장 그래서 당신은에 나뭇 가지를 원한다 자동 URL 인코딩을 중지하십시오.

글자와 밑줄이있는 자리 표시자는 path()으로 전달할 수 있으므로 이스케이프 처리되지 않습니다. 그런 다음 메일 침프 기대하는 문자열로 자리를 replace 수 있습니다 귀하의 제안에 대한

{{ path('my_route', {variable : 'MAILCHIMP_VARIABLE'})|replace({ 
    'MAILCHIMP_VARIABLE': '*|VARIABLE|*' 
}) }} 
0

감사합니다! 결국 그것은 모두 내 잘못이었습니다 ... merch 태그 중 하나가 mailchimp-side 설정에서 누락되어 원하는 값으로 대체 할 수 없었습니다. 바보 같은 날!