콘텐츠로 건너뛰기

Liquid 템플릿

Youtube 동영상: Customer Journey에서 콘텐츠 템플릿 사용법 배우기

Liquid 템플릿은 일반적인 Dynamic Content 사용 외에도 정교한 로직을 구현하여 Pushwoosh의 개인화 기능을 크게 확장합니다.

Pushwoosh의 메시지 개인화는 Tags(사용자 데이터)를 기반으로 합니다. Pushwoosh는 다양한 기본 Tags사용자 지정 Tags를 제공합니다. 이를 사용하여 사용자의 이름, 도시, 구매 내역 등을 지정하여 더 개인화된 메시지를 보낼 수 있습니다. 예: Hi {{First_name}}, thanks for ordering {{item}}.

Liquid 템플릿은 동적 콘텐츠에 더 많은 로직을 추가합니다. 예를 들어, 사용자의 구독 태그에 “free”가 포함되어 있으면 “10% 할인을 받으세요”라는 메시지를 보낼 수 있습니다.

사용자의 ID, 행동, 선호도에 따라 메시지 내용을 수정하는 것은 관련성을 높이고 마케팅 캠페인에서 더 인상적인 결과를 얻는 가장 효율적인 방법입니다.

Shopify의 Liquid를 기반으로 하는 콘텐츠 템플릿은 tags, objects, filters의 조합을 사용하여 동적 콘텐츠를 로드합니다. 콘텐츠 템플릿을 사용하면 템플릿 내에서 특정 변수에 액세스하고 데이터 자체에 대해 아무것도 알 필요 없이 해당 데이터를 출력할 수 있습니다.

objects는 사용자에게 표시될 콘텐츠를 정의합니다. objects는 이중 중괄호 {{ }}로 묶어야 합니다.

예를 들어, 메시지를 개인화할 때 본문에 {{Name}}을 보내 사용자의 이름을 메시지 내용에 추가합니다. 사용자의 이름(Name 태그 값)이 사용자가 보게 될 메시지에서 Liquid 객체를 대체합니다.

Hi {{Name}}! We're glad you're back!

tags는 템플릿의 로직과 제어 흐름을 만듭니다. 중괄호 백분율 구분 기호 {%%} 및 그들이 둘러싸는 텍스트는 템플릿이 렌더링될 때 가시적인 출력을 생성하지 않습니다. 이를 통해 사용자에게 Liquid 로직을 표시하지 않고 변수를 할당하고 조건이나 루프를 만들 수 있습니다.

예를 들어, if 태그를 사용하여 사용자 기기에 설정된 언어에 따라 메시지의 언어를 변경할 수 있습니다:

{% if Language == 'fr' %}
Salut!
{% else %}
Hello!
{% endif %}

Tags 연산자

Anchor link to
연산자설명
==같음
!=같지 않음
>보다 큼
<보다 작음
>=크거나 같음
<=작거나 같음
or논리적 or
and논리적 and
contains문자열 또는 문자열 배열 내에 하위 문자열이 있는지 확인

filters는 Liquid 객체 또는 변수의 출력을 수정합니다. 이중 중괄호 {{ }} 및 변수 할당 내에서 사용되며 파이프 문자 |로 구분됩니다. 하나의 출력에 여러 필터를 사용할 수 있으며 왼쪽에서 오른쪽으로 적용됩니다.

{{ Name | capitalize | prepend:"Hello " }}

Liquid 템플릿 사용법

Anchor link to

Liquid 템플릿은 Control Panel에서 보낸 메시지와 API 요청 모두에 사용할 수 있습니다.

Pushwoosh에서 Liquid 템플릿은 모든 채널 메시지의 모든 콘텐츠 필드에 적용할 수 있습니다:

  • 푸시 알림
  • 이메일

메시지에 Liquid 템플릿을 추가하려면 메시지 본문에 삽입하세요. 푸시 또는 이메일 요소로 작업할 때 Customer Journey Builder 인터페이스에서 직접 할 수 있습니다.

Customer Journey Builder > 캠페인 생성으로 이동하여 다음 요소를 캔버스로 드래그 앤 드롭합니다: Audience-based Entry, Push(또는 Email), Exit. 요소를 연결합니다. 그런 다음 Push 아이콘을 클릭하고 사용자 지정 콘텐츠를 선택한 다음 복사본을 삽입합니다.

Liquid 로직을 추가하려면 다음 구문을 사용하여 태그 값을 사용하세요:

{% if TagName == 'value' %}
Content to send in this scenario
{% else %}
Content to send otherwise
{% endif %}

그런 다음 적용을 클릭합니다.

템플릿 변수(Pushwoosh Tags)는 공백을 포함하지 않아야 하며 영숫자 값과 밑줄만 포함해야 합니다(예: My Tag 대신 my_tag 또는 myTag).

Journey에서 Liquid 템플릿에 대해 자세히 알아보기

Connected content

Anchor link to

Connected content는 Liquid 템플릿의 기능으로, 웹 서비스와 같은 외부 소스에서 데이터를 동적으로 검색하여 이메일 또는 푸시 알림 메시지 내에서 직접 사용할 수 있습니다. 이 기능은 지정된 URL에서 JSON 데이터를 가져와 콘텐츠에 활용할 수 있는 변수에 저장하여 실시간 개인화를 가능하게 합니다.

주요 사용 사례

Anchor link to
  • 제품 추천: 각 사용자에게 맞춤화된 개인화된 제품 목록을 표시합니다.

  • 프로모션 코드: 백엔드 서비스에서 생성된 고유한 프로모션 코드를 삽입합니다.

전제 조건

Anchor link to
  • Connected Content를 사용하려면 User ID, HWID 또는 사용자 지정 태그를 기반으로 필요한 데이터(예: 프로모션 코드, 제품 추천)를 생성하고 제공하는 자체 백엔드 서비스가 있어야 합니다. 그런 다음 Pushwoosh는 메시지를 보내기 전에 이 데이터를 가져옵니다.

단계별 구현 가이드

Anchor link to

1단계. 백엔드 서비스 설정

Anchor link to

백엔드 서비스는 다음을 수행해야 합니다:

  • 사용자별 매개변수(예: userId)를 포함하는 요청을 수락합니다. Connected Content는 UserID, HWID 또는 프로젝트에 설정한 모든 사용자 지정 태그를 지원합니다.
  • 필요한 데이터와 함께 JSON 응답을 반환합니다. 이 콘텐츠는 메시지에 동적으로 삽입될 수 있습니다.

2단계. Pushwoosh에서 Connected content로 프리셋 생성

Anchor link to
  1. Push 또는 이메일 콘텐츠 편집기에서 메시지 필드에 Connected Content 구문을 삽입합니다.

예시

{% connected_content http://your-backend-url.com?userId={{ ${userid} }} :save result %}

구문 분석

connected_content지정된 백엔드 URL에서 JSON 데이터를 가져옵니다.
http://your-backend-url.com필요한 데이터를 JSON 형식으로 반환하는 백엔드 엔드포인트입니다.
userId={{ ${userid} }}사용자 ID를 백엔드에 전달하는 동적 쿼리 매개변수입니다.
:save result가져온 JSON 응답을 Liquid 템플릿에서 사용할 수 있도록 result 변수에 저장합니다.

Connected Content 구문 삽입

인증 (선택 사항)

백엔드 서비스에 인증이 필요한 경우, 안전한 액세스를 보장하기 위해 Connected Content 요청에 API 키 또는 토큰을 포함할 수 있습니다.

{% connected_content http://your-backend-url.com?userId={{ ${userid} }}&auth=YOUR_API_KEY :save result %}

선택적 :headers 매개변수(헤더 이름과 값의 JSON 객체)를 사용하여 인증(또는 기타) 데이터를 HTTP 헤더로 보낼 수도 있습니다.

{% connected_content http://your-backend-url.com?userId={{ ${userid} }} :headers {"Authorization": "Bearer YOUR_TOKEN", "X-Api-Key": "YOUR_API_KEY"} :save result %}
:headers {...}요청과 함께 전송되는 HTTP 헤더의 JSON 객체입니다(예: Authorization: Bearer <token>).

Connected content에서 태그 사용

사용자 지정 태그를 포함하려면 Connected Content 요청({{ tag_name }})에 쿼리 매개변수로 삽입하세요.

{% connected_content http://your-backend-url.com?userId={{ ${userid} }}{{ Language }} :save result %}
  1. 다음으로, 다음과 같이 검색된 데이터를 통합한 메시지 텍스트를 추가합니다:
Hey, {{userid}}, grab your personal promo code - {{result.code}}

검색된 데이터와 함께 메시지 텍스트 추가

  1. 메시지 내용을 최종 확정하고 프리셋 설정을 구성한 후, 캠페인에서 재사용할 수 있도록 저장합니다.

3단계. 구성된 프리셋을 사용하여 메시지 보내기

Anchor link to

이 프리셋을 사용하여 일회성 푸시 또는 이메일 양식 또는 customer journey를 사용하여 메시지를 보냅니다.